Clozure CL
Developer(s) | Clozure Associates |
---|---|
Stable release |
1.11[1]
/ November 6, 2015 |
Operating system | Linux, Solaris, FreeBSD, Mac OS X, Microsoft Windows |
Platform | Cross-platform |
Available in | Common Lisp |
Type | IDE, Compiler and runtime |
License | LGPL 2.1, since Jan 2016 Apache 2[2] |
Website |
ccl |
Clozure CL (CCL) is a Common Lisp implementation. It implements the full ANSI Common Lisp standard with several extensions (CLOS MOP, threads, CLOS conditions, CLOS streams, ...). It contains a command line development environment, an experimental integrated development environment (IDE) for Mac OS X using the Hemlock editor, and can also be used with SLIME (a Common Lisp development environment for GNU Emacs). Clozure CL is open source and the project is hosted by Clozure Associates.
Supported platforms
Clozure CL supports the Mac OS X, Linux, FreeBSD, Solaris and Microsoft Windows platforms. There are 32 and 64 bit x86 variants for each. Additionally, there are PowerPC ports for Mac OS X and Linux, and a 32-bit ARM port for Linux.
Applications
Clozure CL is used by ITA Software for the business logic of a new Airline Reservation System for Air Canada.[3]
Clozure CL is also commonly used as an underlying Common Lisp implementation for the ACL2 theorem prover.[4]
History
Formerly known as OpenMCL, Clozure CL is an evolution of Macintosh Common Lisp.
Technology
CCL contains a precise, generational, compacting garbage collector. CCL's compiler produces native instructions for Lisp expressions and files. By default every expression entered at the REPL is compiled to native code.
Lisp threads are implemented as preemptively-scheduled, native operating-system threads.
CCL implements built-in facilities to easily interface with C and Objective-C libraries (Cocoa bridge) and these are used to implement the IDE amongst other things.
The IDE (based upon the Hemlock editor) is currently labelled as experimental. An effort [5] is underway to improve this.