Clozure CL

Summary

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.

Clozure CL
Developer(s)Clozure Associates
Stable release
1.12.2[1] / August 8, 2023; 8 months ago (2023-08-08)
Operating systemLinux, Solaris, FreeBSD, Mac OS X, Microsoft Windows
PlatformCross-platform
Available inCommon Lisp
TypeIDE, Compiler and runtime
LicenseApache 2[2] since Jan 2016, earlier version is licensed under LGPL 2.1.
Websiteccl.clozure.com

Supported platforms edit

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 edit

Clozure 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 edit

Formerly known as OpenMCL, Clozure CL is an evolution of Macintosh Common Lisp.

Technology edit

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[better source needed][5] is underway to improve this.

References edit

  1. ^ Release Clozure CL 1.12.2
  2. ^ Clozure CL now Apache 2 licensed
  3. ^ ECLM 2009 talk by Dan Weinreb Archived 2012-07-07 at archive.today
  4. ^ "ACL2 installation requirements".
  5. ^ Community pledge drive for IDE improvements

External links edit

  • Clozure CL
    • Clozure CL on Clozure Associates site
  • Github Repository and Issue Tracker
  • Trac for Clozure CL
  • OpenMCL-Devel mailing list
  • Clozure CL in Apple's Mac App Store