Clozure CL

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.11.5[1] / November 29, 2017 (2017-11-29)
Operating systemLinux, Solaris, FreeBSD, Mac OS X, Microsoft Windows
PlatformCross-platform
Available inCommon Lisp
TypeIDE, Compiler and runtime
LicenseLGPL 2.1, since Jan 2016 Apache 2[2]
Websiteccl.clozure.com

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

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.

gollark: https://en.wikipedia.org/wiki/General_number_field_sieve
gollark: You pass the address as a command line argument.
gollark: People would use other less friendly miners otherwise.
gollark: `main.lua` somewhere.
gollark: It has novel algorithms to reduce server resource consumption.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.