Common Lisp implementation

Free Common Lisp implementations and their *features*.

Comparison of actively developed Common Lisp implementations

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 all platforms listed may be actively supported.

Note: Some implementation builds fail to include FFI, sockets, and/or threads. Fink CLISP fails to includes threads, and MacPorts anything fails to include FFI. Aptitude lisps are severely out of date: SBCL fails on Xen, and ECL crashes during installation.

Implementation Supported Platforms Compiler Threads? Features Startup file
CLISP Windows, Mac OS X, Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Dragonfly BSD Bytecode Yes (experimental) Small image size, very efficient bignums, Callbacks, modules ~/.clisprc.lisp
CMUCL Linux, Mac OS X, FreeBSD, Solaris, FreeBSD, NetBSD, OpenBSD, IRIX, HPUX Bytecode, Native & Block Compilation No High quality native compiler, foreign callbacks ~/.cmucl-init.lisp
ECL Linux, FreeBSD, NetBSD, OpenBSD, Solaris, Windows, Mac OS X Native via C, also bytecode Yes (all platforms) Executable delivery and portability. Integrates well with C programs (i.e. Embeddable, native powerful FFI). ~/.eclrc
CCL Mac OS X, Linux, FreeBSD, Solaris, Windows XP and later Native Yes (all platforms) Small image size, fast compiler, convenient and powerful FFI, callbacks, executable delivery, precise gc ~/ccl-init.lisp
SBCL Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, Windows (Experimental) Native Yes (x86 and x86-64 Linux only; experimental on OS X, FreeBSD, Windows) High quality native compiler; callbacks; executable delivery; ~/.sbclrc
ABCL JVM JVM bytecode Yes FFI to Java, platform independence ~/.abclrc
MKCL Linux (x86 and x86_64), Windows XP (Win32), Windows 7 (Win64) Native via C, bytecode-compiled interpreter Yes POSIX compliant runtime on Linux, Embeddable, FFI with callbacks. ~/.mkclrc

Daniel Weinreb has a current (as of February 2010) survey of Common Lisp implementations that is more detailed than the chart above.

All Free Software Common Lisp implementations (some of these may not be actively developed):

For non-free implementations, see the list on wikipedia.

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


Pages in this topic: ABCL   CCL   CLiCC   clisp   CMUCL   ECL   emacs-cl   GCL   MCL   MKCL   Movitz   Poplog   Sacla   SBCL   ThinLisp   WCL   XCL  


Also linked from: ACL   ACL-COMPAT   araneida   Benchmarks   Changes in June 2000   cl-jointgen   Clozure   Datoura   detachtty   Garnet   Getting Started   index   Installing OpenMCL on Mac OS X   Linux   LISP   Lisp newbie   LispWorks   LLVM   MacOS X   Marko Kocic   NaCL   NetBSD   Performance Benchmarks   Performance Benchmarks2   Planet of the Feebs   Suggested Programming Projects   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