source: tags/1.6.1/README

Last change on this file was 15265, checked in by Mark Evenson, 4 years ago

abcl-1.6.1: further corrections to metadata and documentation

  • Property svn:eol-style set to native
File size: 6.9 KB
Line 
1Armed Bear Common Lisp README
2=============================
3
4GENERAL INFORMATION
5-------------------
6
7Armed Bear Common Lisp is a conforming implementation of ANSI Common
8Lisp that runs in a Java virtual machine.  It compiles Lisp code
9directly to Java byte code.
10
11
12LICENSE
13=======
14
15Armed Bear Common Lisp is distributed under the GNU General Public
16License with a classpath exception (see "Classpath Exception" below).
17
18A copy of GNU General Public License (GPLv2) is included in this
19distribution, in <file:COPYING>.
20
21We have modified our GPLv2 license section 13 to read:
22
23     13. Linking this library statically or dynamically with other
24     modules is making a combined work based on this library. Thus, the
25     terms and conditions of the GNU General Public License cover the
26     whole combination.
27
28     The following paragraph details the "classpath exception" which ABCL
29     allows as an exception to the statement about linking libraries.
30
31     As a special exception, the copyright holders of this software give
32     you permission to link this software with independent modules to
33     produce an executable, regardless of the license terms of these
34     independent modules, and to copy and distribute the resulting
35     executable under terms of your choice, provided that you also meet,
36     for each linked independent module, the terms and conditions of the
37     license of that module. An independent module is a module which is
38     not derived from or based on this software. If you modify this
39     software, you may extend this exception to your version of the
40     software, but you are not obligated to do so. If you do not wish to
41     do so, delete this exception statement from your version.
42
43
44RUNNING FROM DOCKER
45===================
46
47With [Docker Engine][] installed one may execute:
48
49    docker build -t YOURID/abcl .
50    docker run -it YOURID/abcl
51
52to get something like
53
54    illin:~/work/abcl$ docker run -it YOURID/abcl
55    Armed Bear Common Lisp 1.6.1
56    Java 1.8.0_252 Oracle Corporation
57    OpenJDK 64-Bit Server VM
58    Low-level initialization completed in 0.295 seconds.
59    Startup completed in 1.425 seconds.
60    Type ":help" for a list of available commands.
61    CL-USER(1): 23
62    23
63
64See <file:Dockerfile> for the build instructions.
65
66[Docker Engine]: https://www.docker.com/products/docker-engine
67
68
69
70RUNNING FROM BINARY RELEASE
71===========================
72
73After you have downloaded a binary release from either [the
74distributed Maven POM graph][maven-abcl] or from
75[abcl.org][abcl.org-release] archive unpack it into its own
76directory. To run ABCL directly from this directory, make sure Java
77(Java 6, 7, 8, 11, 13, and 14 are supported by ABCL 1.6.1) is in your
78shell's path.
79
80[maven-abcl]:          <https://mvnrepository.com/artifact/org.abcl/abcl/1.6.1>
81[maven-abcl-contrib]:  <https://mvnrepository.com/artifact/org.abcl/abcl-contrib/1.6.1>
82[abcl.org-release]:    <http://abcl.org/releases/1.6.1/>
83
84To start ABCL, simply issue the following command:
85
86    cmd$ java -jar abcl.jar
87
88which should result in output like the following
89
90    Armed Bear Common Lisp 1.6.1
91    Java 1.8.0_242 AdoptOpenJDK
92    OpenJDK 64-Bit Server VM
93    Low-level initialization completed in 0.356 seconds.
94    Startup completed in 2.055 seconds.
95    Loading /home/evenson_not_org/.abclrc completed in 13.669 seconds.
96    Type ":help" for a list of available commands.
97    CL-USER(1):
98
99Yer now at the interactive ABCL "Read Eval Print Loop" (REPL): hacks
100'n glory await.
101
102SWANK
103-----
104
105One may easily start a swank listener via
106
107    (require :asdf)
108    (require :abcl-contrib)
109    (asdf:load-system :quicklisp-abcl :force t)
110    (ql:quickload :swank)                     
111
112
113BUILDING FROM SOURCE RELEASE
114============================
115
116ABCL may be built from its source code by executing the build
117instructions <file:build.xml> expressed by the venerable Apache Ant
118tool.
119
120To build, one must have a Java 6, 7, 8, 11, 13 or 14 Java Development
121Kit (JDK) installed locally. Just the Java Runtime Environment (JRE)
122isn't enough, as you need the Java compiler ('javac') to compile the
123Java source of the ABCL implementation.
124
125Download a binary distribution [Ant version 1.7.1 or greater][ant].
126Unpack the files somewhere convenient, ensuring that the 'ant' (or
127'ant.bat' under Windows) executable is in your path and executable.
128
129[ant]: http://ant.apache.org/bindownload.cgi
130
131Then simply executing
132
133    cmd$ ant
134
135from the directory containing the <file:build.xml> instructions will
136create an executable wrapper ('abcl' under UNIX, 'abcl.bat' under
137Windows).  Use this wrapper to start ABCL.
138
139The build may be customized by copying <file:abcl.properties.in> to
140<file:abcl.properties>, which will cause Ant to attempt to build
141incrementally as well as optimizing the runtime for a contemporary
14264bit desktop/server machine running Java 8 or 11.  The file contains
143incomplete documentation on how it may be edited for subsequent
144customization.  As an alternative to copying the prototype, if one has
145a version of bash locally, one may issue via Ant
146
147    ant abcl.properties.autoconfigure.openjdk.11
148
149or from the shell as
150
151    bash ci/create-abcl-properties.bash openjdk11
152
153Currently upported platforms are 'openjdk6', 'openjdk7', 'openjdk8',
154'openjdk11', 'openjdk13', and 'openjdk14'.
155
156
157Using NetBeans
158--------------
159
160Alternatively, one may install the [Netbeans visual integrated
161development environment][netbeans], which contains both the Java
162Development Kit as well as the Ant build tool.
163
164With Netbeans, one should be able to open the ABCL directory as a
165project whereupon the usual build, run, and debug targets as invoked
166in the GUI are available.  Use the 'slime' config with a suitably
167linked 'swank.asd' in '~/.asdf-install-dir/systems/' to connect a REPL
168to the NetBeans debug process.
169
170[netbeans]: http://netbeans.org/downloads/
171
172
173BUGS
174====
175
176ABCL is a conforming ANSI Common Lisp implementation.  Any other
177behavior should be reported as a bug.
178
179ABCL now has a manual stating its conformance to the ANSI standard,
180providing a compliant and practical Common Lisp implementation.
181
182
183Tests
184-----
185
186ABCL 1.6.1 currently fails 45 out of 21848 total tests, whereas ABCL
1871.5.0 failed 48 out of 21708 total tests in the [revised and expanded
188ANSI CL test suite][ansi-test] (derived from the tests originally
189written for GCL).
190
191[ansi-test]: git+https://gitlab.common-lisp.net/ansi-test/ansi-test.git
192
193Maxima's test suite runs without failures.
194
195ABCL comes with a test suite, see the output of `ant help.test` for
196more information.
197
198### Deficiencies
199
200Many.  But patches to address issues mentioned above will be gladly
201accepted.
202
203CONTACT
204=======
205
206Please report problems to the development mailing list:
207
208    <armedbear-devel@common-lisp.net>
209
210Have fun!
211
212AUTHORS
213=======
214
215On behalf of all ABCL development team and contributors,
216
217    Mark Evenson
218    Erik Huelsmann
219    Rudolf Schlatte
220    Alessio Stalla
221    Ville Voutilainen
222
223    alan
224    olof ferada
225    pipping
226    slyrus
227    vibhu
228    dmiles
229
230April 2020
Note: See TracBrowser for help on using the repository browser.