CMU Common Lisp
From Wikipedia, the free encyclopedia
CMUCL | |
---|---|
Design by | Carnegie Mellon University |
Developed by | Various |
Initial release | early 1980s |
Latest release | 19e / 1 May 2008 |
OS | several POSIX-compliant OSs |
Platform | Cross-platform |
Available in | Common Lisp |
Genre | Compiler and runtime |
License | Public Domain |
Website | www.cons.org/cmucl |
CMUCL is a free Common Lisp implementation, originally developed at Carnegie Mellon University. It compiles to native code as well as compact byte code; the compiler ("Python", not to be confused with the Python programming language) generates some of the fastest object code of any Common Lisp implementation.[citation needed] CMUCL runs on most Unix-like platforms, including Linux and BSD; there is an experimental Windows port as well. Steel Bank Common Lisp is derived from CMUCL.
[edit] Features
- A sophisticated native-code compiler which is capable of powerful type inferences, and generates code competitive in speed with C compilers.[citation needed]
- Generational garbage collection and multiprocessing capability on the x86 ports.
- A foreign function interface which allows interfacing with C code and system libraries, including shared libraries on most platforms, and direct access to Unix system calls.
- Support for interprocess communication and remote procedure calls.
- An implementation of CLOS, the Common Lisp Object System, which includes multimethods and a metaobject protocol.
- A graphical source-level debugger using a Motif interface, and a code profiler.
- An interface to the X11 Window System (CLX), and a sophisticated graphical widget library (Garnet).
- Programmer-extensible input and output streams.
- An Emacs-like editor implemented in Common Lisp.