List of Lisp-family programming languages
The functional programming language Lisp is the second-oldest high-level programming language with direct descendants and closely related dialects still in widespread use today. The language Fortran is older by one year. Lisp, like Fortran, has changed a lot since its early days, and many dialects have existed over its history. Today, the most widely known general-purpose Lisp dialects are Common Lisp and Scheme.
Language | Year begun | Created by | Comments | References |
ACL2 | 1990 | Robert Boyer, J Moore, Matt Kaufmann | A Computational Logic for Applicative Common Lisp consists of a programming language, an extensible theory in a first-order logic, and a mechanical theorem prover | |
Arc | 2008 | Paul Graham | Dialect of Lisp developed by Paul Graham and Robert Morris | |
AutoLISP | 1986 | David Betz | Built to include and use with the full version of AutoCAD and its derivatives | |
BBN LISP | 1966 | BBN | Based on L. Peter Deutsch's implementation of Lisp for PDP-1, which was developed from 1960 to 1964; in time language was expanded until it became its own separate dialect in 1966; later renamed Interlisp | |
Chez Scheme | 1985 | R. Kent Dybvig | Scheme dialect | |
Chicken | 2000 | Felix Winkelmann | Scheme dialect | |
Clojure | 2007 | Rich Hickey | Lisp dialect, emphasizes functional programming; runs on Java virtual machine, Common Language Runtime, and JavaScript engines; like other Lisps, treats code as data and has a macro system | |
ANSI Common Lisp | 1994 | ANSI X3J13 committee | Common Lisp enhanced and standardized, published in ANSI standard document ANSI INCITS 226-1994; to the features of Common Lisp, it adds the loop macro, and the Common Lisp Object System to provide object-oriented programming paradigm with multiple dispatch, and method combinations; runs on many platforms: Unix, Linux, macOS, Windows, JVM, JavaScript, Unix/C, LLVM/C++, Android, iOS | |
Common Lisp | 1984 | Lisp dialect first standardized in a book, "Common Lisp the Language", by Guy L. Steele, developed as a standardized and improved successor of Maclisp; statically and dynamically scoped; strongly-typed, allows type declarations; separate namespaces for functions versus data variables, a trait often named Lisp-2; object-oriented programming is possible via libraries such as Flavors, CommonLOOPS, and later CLOS; treats code as data and has a macro system; The reader is extensible via reader macros | ||
Dylan | 1992 | Apple Computer | Mostly based on Scheme and Common Lisp, was designed as system and application programming language by Apple; first used to write an operating system and applications for internal prototypes of the later released Apple Newton computer; first official version of Apple Dylan also had s-expression based syntax; Apple collaborated with partners to develop this language | |
Emacs Lisp | 1976 | Richard Stallman | Also termed Elisp, used by GNU Emacs and XEmacs text editors to implement most editing functions built into Emacs | |
EuLisp | 1990 | Statically and dynamically scoped Lisp dialect developed by a loose formation of industrial and academic Lisp users and developers across Europe; the standardizers intended to create a new Lisp "less encumbered by the past", and not so minimalist as Scheme, and to integrate the object-oriented programming paradigm well | ||
Franz Lisp | 1980 | Richard Fateman | Written at UC Berkeley by the students of Professor Richard J. Fateman, based largely on Maclisp and distributed with the Berkeley Software Distribution for the Digital Equipment Corp VAX | |
Game Oriented Assembly Lisp | 2000s | Andy Gavin | Video game programming language developed by Andy Gavin and the Jak and Daxter team at Naughty Dog; written using Allegro Common Lisp; used in developing the full game series | |
Ikarus | 2007 | Abdulaziz Ghuloum | Scheme dialect | |
Interlisp | 1967 | BBN | Programming environment built around a version of Lisp language; development began in 1967 at Bolt, Beranek and Newman in Cambridge, Massachusetts as BBN LISP, which ran on PDP-10 machines running the TENEX operating system; when Danny Bobrow, Warren Teitelman, and Ronald Kaplan moved from BBN to Xerox PARC, it was renamed Interlisp | |
ISLISP | 1997 | WG16 | Small core language to help bridge the gap between differing Lisp dialects | |
Le Lisp | 1981 | INRIA | Designed by Jérôme Chailloux, Emmanuel St. James, INRIA | |
Lisp Flavored Erlang | 2008 | Robert Virding | Lisp dialect built on Core Erlang and the Erlang virtual machine BEAM | |
Lisp Machine Lisp | 1984 | Sometimes named Zetalisp, is a direct descendant of Maclisp; was developed in the mid to late 1970s as the systems programming language for the MIT Lisp machines | ||
Maclisp | 1966 | Project MAC | Originated at MIT's Project MAC in late 1960s; based on Lisp 1.5; Richard Greenblatt was main developer of original codebase for the PDP-6; Jon L. White was responsible for later maintenance and development | |
MultiLisp | 1980s | Robert H. Halstead | Scheme dialect, extended with constructs for parallel computing, executing, and shared memory; also had some unusual garbage collection and task scheduling algorithms | |
NIL | 1970s | MIT | 32-bit Lisp implementation developed at MIT; intended to be the successor to Maclisp; NIL stood for "New Implementation of LISP", and was in part a response to DECs VAX computer | |
OpenLisp | 1988 | Christian Jullien | ISLISP compatible language with many Common Lisp extensions; runs on most modern operating systems | |
Owl Lisp | 2012 | Aki Helin | Pure functional Scheme dialect; based on applicable subset of the R7RS standard; has been extended mainly with threads and the data structures needed for purely functional operation | |
PicoLisp | 1988 | Alexander Burger | Open-source Lisp dialect; runs on Linux and other POSIX-compliant systems; most prominent features are simplicity and minimalism | |
Portable Standard Lisp | 1980 | University of Utah | Tail-recursive dynamically bound Lisp dialect inspired by its predecessor, Standard Lisp and the Portable Lisp Compiler; it implements the Reduce computer algebra system | |
Racket | 1994 | PLT Inc. | General purpose, multi-paradigm programming language in the Lisp-Scheme family; one of its design goals is to serve as a platform for language creation, design, and implementation; it is used in many contexts such as scripting, general-purpose programming, computer science education, and research | |
Scheme | 1970 | Guy L. Steele, Gerald Sussman | Functional programming language with a minimalist design philosophy specifying a small standard core with powerful tools for language extension | |
Scheme In One Defun | 1988 | George J. Carrette | Small Scheme implementation, written in C, made to embed in C programs | |
SKILL | 1990 | Cadence Design Systems | Used as a scripting language and PCell description language used in many EDA software suites by Cadence | |
T | 1984 | Jonathan A. Rees, Norman I. Adams | Scheme dialect developed in the early 1980s by Jonathan A. Rees, Kent M. Pitman, and Norman I. Adams of Yale University as an experiment in language design and implementation | |
TXR | 2009 | Kaz Kylheku | Consists of a Lisp dialect and a pattern language for processing text |