
Dnes se podíváme na léty prověřený funkcionální jazyk LISP (List processing). Protože ne každému je pojem funkcionální jazyk známý a v dalším dílu se ještě s některými jazyky z této široké skupiny setkáme, pojďme si nejprve pojem funkcionální jazyk trochu přiblížit a správně zařadit.
Obecně se programovací jazyky dělí na imperativní (procedurální) a deklarativní (neprocedurální). Většina jazyků, které jsou v současné době širokou veřejností běžně používány, jsou jazyky imperativní. V principu je základem těchto jazyků algoritmus. Tedy postup vyjádřený přesnou posloupností příkazů, jak se má daná úloha vyřešit. V minulých dílech popisované jazyky byly imperativní.
U deklarativních jazyků je řešená úloha popisována prostřednictvím funkcí, nebo logických výrazů. Podle toho, pomocí čeho je daná úloha popsána, dělíme deklarativní jazyky dále na jazyky funkcionální (LISP, Haskell, Scheme, …), které k popisu úlohy využívají funkcí a relační (Prolog), které k popisu úlohy využívají logických výrazů. Nyní však již přejděme k samotnému LISPu.
Duchovním otcem jazyka LISP je John McCarthy, který ho v roce 1958 ve svých 31 letech navrhl při svém působení na MIT (Massachusetts Institute of Technology). Počátečním záměrem nebyla snaha vytvořit nový programovací jazyk, ale pouze rozšířit v té době velmi populární jazyk FORTRAN o zpracovaní seznamů (List processing). V roce 1960 pak byl LISP představen široké odborné veřejnosti článkem „Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I“ (druhá část nebyla nikdy publikována) v časopise „Communications of the ACM“.




7 března, 2007
LuFa




