LISP

Lisp (historically, LISP) is a family of computer programming languages with a long history and a distinctive, fully parenthesized Polish prefix notation.[1] Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only Fortran is older (by one year). Like Fortran, Lisp has changed a great deal since its early days, and a number of dialects have existed over its history. Today, the most widely known general-purpose Lisp dialects are Common Lisp and Scheme. Lisp was originally created as a practical mathematical notation for computer programs, influenced by the notation of Alonzo Church’s lambda calculus. It quickly became the favored programming language for artificial intelligence (AI) research. As one of the earliest programming languages, Lisp pioneered many ideas in computer science, including tree data structures, automatic storage management, dynamic typing, conditionals, higher-order functions, recursion, and the self-hosting compiler.[2] The name LISP derives from ”LISt Processing”. Linked lists are one of Lisp language’s major data structures, and Lisp source code is itself made up of lists. As a result, Lisp programs can manipulate source code as a data structure, giving rise to the macro systems that allow programmers to create new syntax or even new domain-specific languages embedded in Lisp. The interchangeability of code and data also gives Lisp its instantly recognizable syntax. All program code is written as s-expressions, or parenthesized lists. A function call or syntactic form is written as a list with the function or operator’s name first, and the arguments following; for instance, a function f that takes three arguments might be called using (f arg1 arg2 arg3).


References in zbMATH (referenced in 126 articles , 1 standard article )

Showing results 101 to 120 of 126.
Sorted by year (citations)
  1. Felleisen, Matthias; Hieb, Robert: The revised report on the syntactic theories of sequential control and state (1992)
  2. Ressler, Eugene K.: Random list permutations in place (1992)
  3. Talcott, Carolyn: A theory for program and data type specification (1992)
  4. Thomason, Richmond H.: Netl and subsequent path-based inheritance theories (1992)
  5. America, P. H. M.; Rutten, J. J. M. M.: A parallel object-oriented language: design and semantic foundations (1991)
  6. Brackx, F.; Constales, D.: Computer algebra with LISP and REDUCE. An introduction to computer-aided pure mathematics (1991)
  7. Drescher, Gary L.: Made-up minds: a constructivist approach to artificial intelligence. Outgrowth of the author’s thesis (Mass. Inst. of Technology) (1991)
  8. Kaufmann, Matt: Generalization in the presence of free variables: A mechanically-checked correctness proof for one algorithm (1991)
  9. Boyer, R. S.; Moore, J. S.: A theorem prover for a computational logic (1990)
  10. Deprit, André; Deprit, Etienne: Processing Poisson series in parallel (1990)
  11. Riecke, Jon G.: A complete and decidable proof system for call-by-value equalities (1990)
  12. Steele, Guy L. jun.: Common LISP. The language. (1990)
  13. Tierney, Luke: LISP-STAT. An object-oriented environment for statistical computing and dynamic graphics (1990)
  14. Uhl, Jürgen; Schmid, Hans Albrecht: A systematic catalogue of reusable abstract data types (1990)
  15. Cecchini, R.; Tarlini, M.: Symbolic Lie algebras manipulations using COMMON LISP (1989)
  16. Hagiya, Masami: Meta-circular interpreter for a strongly typed language (1989)
  17. Jouannaud, J.-P.; Kirchner, C.; Kirchner, Hélène; Mégrelis, A.: OBJ: Programming with equalities, subsorts, overloading and parameterization (1989)
  18. Luger, George F.; Stubblefield, William A.: Artificial intelligence and the design of expert systems (1989)
  19. Michaelson, Greg: An introduction to functional programming through lambda calculus (1989)
  20. Tichy, Walter F.: Parallel matrix multiplication on the connection machine (1989)