Notes for beginners:

Current Implementations

These implementations are active maintained, improved, and used in production, and are all an excellent choice for application development.


Main Article: SBCL

SBCL (Steel Bank Common Lisp) is a high-performance native code compiler written in Common Lisp and C. The code is descended from CMUCL. It features native threading support, a type inference engine (Useful with gradual typing) and an optimizing compiler.

Steel Bank Common Lisp is named, in honour of CMUCL, after Andrew Carnegie and Andrew Mellon, who made their fortunes in steel and banking, respectively.


CCL (Clozure Common Lisp) is a native code Common Lisp implementation. It supports many platforms, all of which are at relative feature parity.


ECL (Embeddable Common Lisp) is an implementation that compiles Common Lisp to C, and is useful for bringing Common Lisp to new platforms and to embedded environments.


GNU CLISP is an implementation that uses a bytecode compiler rather than a native code compiler. By not compiling to machine code, CLISP is easily portable and runs across a wide array of systems.


ABCL (Armed Bear Common Lisp) is an implementation that targets the JVM.

Domain-Specific Implementations

These implementations target a specific niche and should not be considered general purpose.


Movitz is a Common Lisp implementation that runs “on the metal” on the x86 architecture. It’s intended to be the basis of a Common Lisp-based operating system or for embedded development.

See this fork for building.


XCL is a GPL-licensed implementation with a kernel written in C++, and an optimizing compiler written in Common Lisp with x86 and x86_64. It was developed by the author of ABCL. The latest version can compile SBCL, and the tests of cl-ppcre, Ironclad and Alexandria.

New Implementations

The following implementations are either new or under development.


Clasp is a new Common Lisp implementation that targets LLVM.

See the Hacker News and Reddit discussions on the announcement.

Obsolete Implementations

This section documents implementations that are obsolete, historical, or otherwise not recommended for use.


ManKai Common Lisp started as a fork of ECL.