Petersburg, Clearwater and communities throughout Tampa Bay. Originally published by The Tampa Tribune, tbo is now among the portfolio of brands powered by the Tampa Bay Times. Jump to navigation Jump to search “LISP” redirects here. Lisp was originally created as a practical mathematical notation for computer programs, influenced by the notation of Alonzo Church’s lambda calculus. The name LISP derives from “LISt Processor”. Linked lists are one of Lisp’s major data structures, and Lisp source code is made of lists. The interchangeability of code and data gives Lisp its instantly recognizable syntax.
All program code is written as s-expressions, or parenthesized lists. Information Processing Language was the first AI language, from 1955 or 1956, and already included many of the concepts, such as list-processing and recursion, which came to be used in Lisp. Once Lisp was implemented, programmers rapidly chose to use S-expressions, and M-expressions were abandoned. Lisp was first implemented by Steve Russell on an IBM 704 computer. Lisp eval function could be implemented in machine code. See CAR and CDR for the etymology of the terms.
The first complete Lisp compiler, written in Lisp, was implemented in 1962 by Tim Hart and Mike Levin at MIT. This compiler introduced the Lisp model of incremental compilation, in which compiled and interpreted functions can intermix freely. Lisp was a difficult system to implement with the compiler techniques and stock hardware of the 1970s. Since inception, Lisp was closely connected with the artificial intelligence research community, especially on PDP-10 systems.
Over its sixty-year history, Lisp has spawned many variations on the core theme of an S-expression language. Moreover, each given dialect may have several implementations—for instance, there are more than a dozen implementations of Common Lisp. Differences between dialects may be quite visible—for instance, Common Lisp uses the keyword defun to name a function, but Scheme uses define. Within a dialect that is standardized, however, conforming implementations support the same core language, but with different extensions and libraries. So named because it contained several improvements on the original “LISP 1” interpreter, but was not a major restructuring as the planned LISP 2 would be.