LISP
(Added sample files) |
Dan Tobias (Talk | contribs) |
||
Line 9: | Line 9: | ||
Some of its cryptically-named operators, such as '''car''' (for the first element of a list) and '''cdr''' (for the remainder of the list), derive from the particulars of the register structure of the original computer it was implemented on (where these operators stand for "contents of address register" and "contents of decrement register"). | Some of its cryptically-named operators, such as '''car''' (for the first element of a list) and '''cdr''' (for the remainder of the list), derive from the particulars of the register structure of the original computer it was implemented on (where these operators stand for "contents of address register" and "contents of decrement register"). | ||
+ | |||
+ | Some modern programming languages, including [[Clojure]], are based on LISP, and represent a paradigm called "functional programming" that is currently popular. | ||
== Sample files == | == Sample files == |
Latest revision as of 17:11, 3 February 2024
LISP (LISt Processing) is a programming language dating back to 1958; only FORTRAN is older among programming languages still in use. While it was originally written in all capitals due to its acronymic origins, it's now more typically written as a normal proper name, "Lisp".
It's known as "the programming language with all the parentheses" due to its syntax consisting of deeply nested structures, the so-called S-Expressions. (This attribute is shared by TRAC programming language, but LISP is better-known, as well as Scheme, which started as an effort to formalize and standardize LISP and later led to the "Common LISP" variant of LISP.) LISP treats everything as a list which can be manipulated by its operators, including LISP commands themselves, so programs are able to be self-modifying.
Some of its cryptically-named operators, such as car (for the first element of a list) and cdr (for the remainder of the list), derive from the particulars of the register structure of the original computer it was implemented on (where these operators stand for "contents of address register" and "contents of decrement register").
Some modern programming languages, including Clojure, are based on LISP, and represent a paradigm called "functional programming" that is currently popular.