Paradigm | Multi-paradigm: procedural, functional, object-oriented, meta, reflective, generic |
---|---|
Family | Lisp |
Designed by | Scott Fahlman, Richard P. Gabriel, David A. Moon, Guy Steele, Dan Weinreb |
Developer | ANSI X3J13 committee |
First appeared | 1984, 1994 for ANSI Common Lisp |
Typing discipline | dynamic, strong |
Scope | lexical, optionally dynamic |
OS | Cross-platform |
Filename extensions | .lisp, .lsp, .l, .cl, .fasl |
Website | common-lisp |
Major implementations | |
Allegro CL, ABCL, CLISP, Clozure CL, CMUCL, ECL, GCL, LispWorks, Scieneer CL, SBCL, Symbolics Common Lisp | |
Dialects | |
CLtL1, CLtL2, ANSI Common Lisp | |
Influenced by | |
Lisp, Lisp Machine Lisp, Maclisp, Scheme, Interlisp | |
Influenced | |
Clojure, Dylan, Emacs Lisp, EuLisp, ISLISP, Julia, Moose, R, SKILL, SubL |
Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 (R2004) (formerly X3.226-1994 (R1999)). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived from the ANSI Common Lisp standard.
The Common Lisp language was developed as a standardized and improved successor of Maclisp. By the early 1980s several groups were already at work on diverse successors to MacLisp: Lisp Machine Lisp (aka ZetaLisp), Spice Lisp, NIL and S-1 Lisp. Common Lisp sought to unify, standardise, and extend the features of these MacLisp dialects. Common Lisp is not an implementation, but rather a language specification. Several implementations of the Common Lisp standard are available, including free and open source software and proprietary products. Common Lisp is a general-purpose, multi-paradigm programming language. It supports a combination of procedural, functional, and object-oriented programming paradigms. As a dynamic programming language, it facilitates evolutionary and incremental software development, with iterative compilation into efficient run-time programs. This incremental development is often done interactively without interrupting the running application.