Mine sisu juurde

Lisp

Allikas: Vikipeedia
Lisp
Paradigma funktsionaalne,protseduraalne,reflektiivne,meta
Väljalaskeaeg 1958
Looja John McCarthy
Arendaja Steve Russell,Timothy P. HartjaMike Levin
Tüüpimine dünaamiline,tugev
Dialektid Common Lisp,Scheme,Emacs Lisp,AutoLISP,Logo,Clojure,ISLISP,Newlisp,BEE Lisp,Arc,SKILL
Mõjutanud keeli ML,Perl,Python,Smalltalk,Ruby,Dylan,Mathematica,Rebol,Qi,Lua,JavaScript,Forth,Nu,OPS5,CLU,Falcon,Io,Ioke

Lisp(kaLISP) on pika ajaloogaprogrammeerimiskeelteperekond.[1]

Lisp-tüüpi keeltele on omane täielikult sulgudega eraldatudeesliidenotatsioonjamakrodelaialdane kasutamine.

Lisp on väga ühtsesüntaksigakeel:andmed,funktsioonid,programmidon kõikloendid.Sellest tuleneb ka keele nimiListprocessing language(loendite töötlemise keel).

Keele autor onJohn McCarthy,kes leiutas selle1958.aastal.

Võimalus programme käigupealt muuta teeb Lispist võimsa keele.[viide?]

Tuntuimad üldotstarbelised Lispi dialektid onCommon LispjaScheme.Üks uuemaid dialekte onClojure.

Mitmed dialektid on kasutusel aga muude programmide koosseisus. Näiteks tekstiredaktorEmacson laiendatavEmacs Lispiabil ningAutoCADAutoLISPiga.

Lispi dialekte saab jaotada Lisp-1 ja Lisp-2 dialektideks. Lisp-1 dialektid kasutavad sama nimeruumi nii funktsioonide kui ka muutujate väärtuste jaoks, samas kui Lisp-2 dialektid kasutavad kahte eri nimeruumi, ühte funktsioonide ning teist muutujate väärtuste jaoks.[2]Tuntumatest dialektidest Scheme, Racket ja Clojure on Lisp-1 dialektid ning Common Lisp on Lisp-2 dialekt.

  1. "Lisp FAQ".paulgraham.com.Vaadatud 26. septembril 2017.
  2. Richard P. Gabriel; Kent M. Pitman (juuni 1988)."Technical Issues of Separation in Function Cells and Value Cells".Lisp and Symbolic Computation.1(1): 81–101.DOI:10.1007/bf01806178.S2CID26716515.