Common Lisp implementation

Free Common Lisp implementations and their *features*.

Partial comparison table

All the implementations below provide an FFI and sockets interface. Callbacks mean in this context that the FFI is capable of passing lisp-functions as callbacks to foreign functions. The startup file is loaded when the Lisp starts (not sure whether this is the best place, but a question came up recently on comp.lang.lisp)

Implementation Supported Platforms ANSI
Compliance
Compiler Features Startup file
CLISP Windows, Mac, Most *nixes Good Bytecode Small image size, very efficient bignums, Callbacks, modules ~/.clisprc.lisp
CMUCL Most *nixes Good Bytecode, Native & Block Compilation High quality native compiler, Callbacks ~/.cmucl-init.lisp
ECL Microsoft Windows, most Un*x variants, Mac OSX Good Native via C, also bytecode Executable delivery. Integrates well with C programs (i.e. Embeddable). Supports native threads on all platforms. ~/.eclrc
GCL Windows, Most *nixes Not that good Native via C ? ~/.gclrc.lisp
CCL/OpenMCL Mac, Linux, FreeBSD, Solaris, Windows (in alpha) Good Native Small image size, fast compiler, convenient and powerful FFI, callbacks, executable delivery, native threads on all platforms, precise gc ~/ccl-init.lisp
SBCL Most *nixes, MacOS X (Darwin), Windows (Experimental) Good Native High quality native compiler; callbacks; executable delivery; native threads on x64 and x86-64 for Linux, Solaris 10, and OS X (experimental) ~/.sbclrc
ABCL Most *nixes, MacOS X (Darwin), Windows Good, except for some CLOS parts JVM bytecode FFI to Java, multithreading, platform independence ~/.abclrc
emacs-cl Emacs Lacks among other things, CLOS and pretty printing. Emacs bytecode FFI with underlying emacs None

For non-free implementations, see [new] ALU wiki, Implementation, or [old] http://www.alu.org/table/systems.htm#vendor. The old link is inacessible on 2007-02-20.

Survey of Common Lisp implementations being maintained as of November, 2007.

If performance is an important criterion for you, you might be interested in the Performance Benchmarks page.


Pages in this topic: amphipoLISP   Armed Bear Lisp   CCL   CLiCC   clisp   Clozure   CMUCL   Corman Lisp   ECL   ECL-Spain   emacs-cl   GCL   KCL Family   Movitz   Nu   OpenMCL   Poplog   PowerLisp   Sacla   SBCL   ThinLisp   WCL   XCL  


Also linked from: araneida   Benchmarks   Changes in June 2000   cl-jointgen   compatibility layers   Datoura   detachtty   ffi   Garnet   index   Installing OpenMCL on Mac OS X   Linux   Lisp   Lisp newbie   LispWorks   LLVM   MacOS X   Marko Kocic   MCL   NaCL   NetBSD   newLisp   OpenGL Bindings   Performance Benchmarks   Performance Benchmarks2   Planet of the Feebs   Practical Lisp Programming   Suggested Programming Projects   thread   WikiNode   Wish List   X-Chat Common Lisp Plugin  

CLiki pages can be edited by anyone at any time. Imagine a fearsomely comprehensive disclaimer of liability. Now fear, comprehensively