source: branches/0.19.x/abcl/README

Last change on this file was 12564, checked in by ehuelsmann, 14 years ago

Backport README changes.

  • Property svn:eol-style set to native
File size: 4.9 KB
Line 
1GENERAL INFORMATION
2===================
3
4Armed Bear Common Lisp is an implementation of ANSI Common Lisp that
5runs in a Java virtual machine.  It compiles its code to Java byte code.
6
7
8LICENSE
9=======
10
11Armed Bear Common Lisp is distributed under the GNU General Public
12License with classpath exception (described below).
13
14A copy of GNU General Public License (GPL) is included in this
15distribution, in the file COPYING.
16
17Linking this software statically or dynamically with other modules is
18making a combined work based on this software. Thus, the terms and
19conditions of the GNU General Public License cover the whole
20combination.
21
22As a special exception, the copyright holders of this software give
23you permission to link this software with independent modules to
24produce an executable, regardless of the license terms of these
25independent modules, and to copy and distribute the resulting
26executable under terms of your choice, provided that you also meet,
27for each linked independent module, the terms and conditions of the
28license of that module. An independent module is a module which is not
29derived from or based on this software. If you modify this software,
30you may extend this exception to your version of the software, but you
31are not obligated to do so. If you do not wish to do so, delete this
32exception statement from your version.
33
34
35RUNNING FROM BINARY RELEASE
36===========================
37
38After you have downloaded a binary release archive, unzip or untar it
39into its own directory. To run ABCL directly from this directory, make
40sure Java (version 1.5 or up) is in your path. Then, type the following
41command:
42
43  $ java -jar abcl.jar
44
45Which should result output like the following:
46
47----------------
48Armed Bear Common Lisp 0.19.1
49Java 1.6.0_14 Sun Microsystems Inc.
50Java HotSpot(TM) Client VM
51Low-level initialization completed in 0.9 seconds.
52Startup completed in 2.294 seconds.
53Type ":help" for a list of available commands.
54CL-USER(1):
55----------------
56
57In order to build ABCL, you need the full SDK. However, in order to
58just run it (like the above), the JRE is enough.
59
60
61BUILDING
62========
63
64If you want to build ABCL, you have 3 options. The first option
65applies when you come from a lisp background. The second and thirds
66options are more appropriate when you come from Java development:
67
68 I)  Bootstrap ABCL using a Common Lisp implementation
69     Supported implementations for this process: SBCL, CMUCL, OpenMCL,
70     Allegro CL, LispWorks or CLISP.
71
72II)  Use the Ant make-like build tool for Java environments
73     The tested lowest working version is Ant 1.7.0.
74
75III) Use the Netbeans 6.x IDE to open ABCL as a project.
76
77
78In both cases you need a supported JDK version (1.5 and 1.6 have been
79tested).  Just the JRE isn't enough.
80
81
82
83I. Lisp-based build
84-------------------
85
86Copy the file 'customizations.lisp.in' to customization.lisp', in the
87directory containing this README file, editing to suit your situation,
88paying attention to the comments in the file.
89
90
91Use ./build-from-lisp.sh <lisp-of-choice>, e.g.
92
93  ./build-from-lisp.sh sbcl
94
95Use abcl.bat on Windows or ./abcl on Unix to start ABCL.
96Note: abcl.bat and abcl contain absolute paths, so you'll need
97to edit them if you move things around after the build.
98
99
100If you're developing on ABCL, you may want to use
101
102  ./build-from-lisp.sh <implementation> --clean=nil
103
104to not do a full rebuild.
105
106
107In case of failure in the javac stage, you might try this:
108
109  ./build-from-lisp.sh <implementation> --full=t --clean=t --batch=nil
110
111This invokes javac separately for each .java file, which avoids running
112into limitations on command line length (but is a lot slower).
113
114
115II. Ant-based build
116-------------------
117
118With Ant in your path, executing
119
120    ant -find build.xml abcl.wrapper
121
122from the directory containing this README file will create an
123executable wrapper ('abcl' under UNIX, 'abcl.bat' under Windows).
124Use this wrapper to start the ABCL Java program.
125
126
127III. Netbeans-based build
128-------------------------
129
130One should be able to open the project as a project in Netbeans 6.x.
131
132
133BUGS
134====
135
136A lot of (renewed) energy has been spent to make ABCL a compliant
137and practically useable Common Lisp implementation.  Because of this,
138ABCL 0.19.1 now fails only 29 out of 21702 tests in the ANSI CL test
139suite.  Next to that, the fail count of the Maxima test suite has been
140reduced to only 5 - rounding errors.
141
142ABCL's CLOS does not handle on-the-fly redefinition of classes
143correctly. Quite a bit of energy has been spent in versions 0.16.0 and
1440.17.0 to improve CLOS performance. There is no support for the long
145form of DEFINE-METHOD-COMBINATION, and certain other required CLOS
146features are also missing. Enough CLOS is there to run
147ASDF2 and CL-PPCRE.
148
149There is no MOP worth mentioning.
150
151Patches to address any of the issues mentioned above will be gladly
152accepted.
153
154Please report problems to the development mailing list:
155
156    armedbear-devel@common-lisp.net
157
158Have fun!
159
160On behalf of all ABCL development team and contributors,
161Erik Huelsmann
162March 20, 2010
Note: See TracBrowser for help on using the repository browser.