Lisp
Lisp | |
---|---|
Jatorria | |
Sorrera-urtea | 1958 |
Argitaratze-data | 1958 |
Ezaugarriak | |
Programazio paradigma | Programazio funtzional,procedural programming(en),metaprogramming(en),multi-paradigm programming(en)etareflective programming(en) |
Deskribapena | |
Honen eragina jaso du | Information Processing Language(mul) |
Ekoizpena | |
Diseinatzailea | John McCarthy |
Garatzailea | John McCarthyetaSteve Russell(en) |
Fikzioa | |
Erabiltzen du | lambda calculus(en) |
Maskota | The Lisp alien(en) |
Lisphistoria luzeko eta parentesiz betetako sintaxi bereizgarria duenprogramazio-lengoaiafuntzional bat da. Jatorriz1958.urtean zehaztuta,goi mailako programazio lengoaienarteanFortranda Lisp baino zaharragoa soilik. Fortran moduan,Lispasko aldatu egin da bere sorreratik, eta hainbat dialekto ezberdin izan dira bere historian zehar. Gaur egun, "Lisp batua"Common Lispda.[1]
Lispjatorriz ordenagailu programentzako notazio matematiko praktiko modura sortu zen,Alonzo Church-enlambda kalkuluanoinarrituz. Laister bihurtu zen programazioa lengoaia gogokoenaadimen artifizialarenikerketan. Lehenetariko programazio-lengoaia izanikinformatikako kontzeptu askoren aitzindari izan zen.
Dialekto nagusiak
[aldatu|aldatu iturburu kodea]Gaur egungo xede orokorreko programazioan bi dialekto nagusienakCommon LispetaSchemedira. Lengoaia hauek diseinu aukera ezberdinak erakusten dituzte.
Common Lisp batez ereMacLisp,Interlisp,etaLisp Machine Lispenondorengoa da. Scheme diseinu minimalistagoa du baina baditu Common Lispen aurkitzen ez diren ezaugarri batzuk.
Hauez gain, Lisp dialektoak aplikazio batzuetanScript lengoaiamoduan erabiltzen dira, ezagunakEmacs LispEmacseditorean etaAutolispAutoCADenizanik
Sintaxi adibideak
[aldatu|aldatu iturburu kodea]Kaixo munduaadibidea:
(formatt"Kaixo, mundua!")
Zenbaki batenfaktoriala:
(defunfaktoriala(n)
(if(<=n1)
1
(*n(faktoriala(-n1)))))
Datuak, adibideak:
15
A
(Erregela16
(BALDIN(ANIMALIAKDAUKAAGINZORROTZAK)
(ANIMALIAKDAUKAATZAPARRAK)
(ANIMALIAKDAUKAAURRERANTZEKOBEGIAK)
(ORDUAN(ANIMALIAHARAGIZALEADA)))
(UEU
(OBJEKTU-MOTAUNIBERTSITATEA)
(HELBIDEA((KALEAGENERAL_CONCHA)
(ZBKIA25)
(HERRIADONOSTIA)))
(ZABALGUNEA(EUSKALHERRIA))
(TELEFONOA943821426)
(POSTA[email protected])
(BURUA'(IÑAKIALEGRIA)))
Funtzioen definizioak, adibideak:
(DEFUNFIBONACCI(N)
(COND((ZEROPN)1)
((EQUALN1)1)
(T(+(FIBONACCI(-N1))
(DEFUNFAKT(N)
(COND((=0N)1)
(T(*N(FAKT(-N1))))))
Espresioen ebaluazioa, adibideak:
15
A
(COND((MEMBERXLISTA1)LISTA1)
((MEMBERXLISTA2)LISTA2)
(T(APPENDLISTA1LISTA2)))
(FIBONACCI(-N2))))))
(FAKTORIALA(+2A))
(SARTU-PILAN(FIRSTLISTA1)LISTA2)
(Y3)
Liburuak
[aldatu|aldatu iturburu kodea]- LISP programazio-lengoaia. Kepa Sarasola Gabiola eta Juan Ramon Bastarrika Larrauri. UEU 1991.(Jeitsi UEUko buruxkak-etik)
Erreferentziak
[aldatu|aldatu iturburu kodea]- ↑abSarasola Gabiola, Kepa; Bastarrika Larrauri, Juan Ramon. (1991).LISP programazio-lengoaia.UEUISBN978-84-86967-32-1.(Noiz kontsultatua: 2021-02-17).
- ↑(Ingelesez)Levenez, Eric. (PDF)Computer Languages History. small diagram..(Noiz kontsultatua: 2019-09-11).