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.
Developer(s) | Clozure Associates |
---|---|
Stable release | 1.12.2[1]
/ August 8, 2023 |
Operating system | Linux, Solaris, FreeBSD, Mac OS X, Microsoft Windows |
Platform | Cross-platform |
Available in | Common Lisp |
Type | IDE, Compiler and runtime |
License | Apache 2[2] since Jan 2016, earlier version is licensed under LGPL 2.1. |
Website | ccl |
Supported platforms
editClozure 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
editClozure CL was used by ITA Software for the business logic of a new Airline Reservation System.[3]
Clozure CL is also commonly used as an underlying Common Lisp implementation for the ACL2 theorem prover.[4]
History
editFormerly known as OpenMCL, Clozure CL is an evolution of Macintosh Common Lisp.
Technology
editCCL 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[better source needed][5] is underway to improve this.
References
editExternal links
edit- Clozure CL
- Github Repository and Issue Tracker
- Trac for Clozure CL
- OpenMCL-Devel mailing list
- Clozure CL in Apple's Mac App Store