Lisp: razlika između inačica

Izvor: Wikipedija
Izbrisani sadržaj Dodani sadržaj
Loveless (razgovor | doprinosi)
m robot Mijenja: et:Lisp
RedBot (razgovor | doprinosi)
m [r2.5.2] robot Mijenja: ru:Lisp
Redak 46: Redak 46:
[[pt:Lisp]]
[[pt:Lisp]]
[[ro:LISP]]
[[ro:LISP]]
[[ru:Лисп]]
[[ru:Lisp]]
[[sh:Lisp]]
[[sh:Lisp]]
[[simple:LISP]]
[[simple:LISP]]

Inačica od 2. prosinca 2010. u 13:53

Lisp je porodica računalnih programskih jezika s dugom povijesti i istaknutom sintaksom zasnovanoj na zagradama. Izvorno specificiran 1958., Lisp je drugi najstariji viši programski jezik koji se i danas naširoko rabi; samo je Fortran stariji. Baš poput Fortrana, Lisp se jako mnogo promijenio od svojih ranih dana, i mnogo je dijalekata postojalo tijekom povijesti. Danas su najpoznatiji dijalekti Lispa opće namjene Common Lisp i Scheme.

Lisp je izvorno stvoren kao praktična matematička notacija za računalne programe, zasnovan na Churchovom lambda računu. Brzo je stekao status favoriziranog programskog jezika za istraživanja u području umjetne inteligencije. Kao jedan od najstarijih programskih jezika, Lisp je uveo mnoge ideje u računarstvo, uključujući stablastih podatkovnih struktura, automatskog upravljanja memorijom, dinamičkog tipiziranja, objektno-orijentiranog programiranja i samoprevođenja.

Naziv Lisp vuče porijeklo od engl. List Processing. Vezane liste su jedna od Lispovih glavnih struktura podataka, a i sam Lisp izvorni kod je sačinjen od listi. Kao posljedica toga, Lisp programi mogu manipulirati izvornim kodom kao strukturom podataka (v. meta programiranje), što dovodi do sustava makroa koji programerima dopušta stvaranje nove sintakse pa čak i "programske jezike specifične domene" ugrađene u Lisp.

Izmjenjivost koda i podataka također daje Lispu njegovu lako prepoznatljivu sintaksu. Sav je programski kod napisan preko S-izraza, ili zagrađenih listi. Poziv funkcije ili sintaksna forma je napisana kao lista sa imenom funkcije ili operatora na početku, nakon kojih slijede argumenti - primjerice funkcija f koja prima tri argumenta može biti pozvana rabeći (f x y z).