LocalazyLocalazy
Lisp je rodina počítačových programovacích jazyků s dlouhou historií a charakteristickou, plně závorkovou prefixovou notací. Lisp, původně specifikovaný v roce 1958, je druhým nejstarším vysokoúrovňovým programovacím jazykem, který se dnes široce používá. Pouze Fortran je starší o jeden rok. Jazyk Lisp vymyslel John McCarthy během svého působení na Massachusettském technologickém institutu (MIT). McCarthy zveřejnil jeho návrh v článku v časopise Communications of the ACM v roce 1960 s názvem "Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I". Ukázal, že pomocí několika jednoduchých operátorů a zápisu funkcí lze vytvořit Turingův úplný jazyk pro algoritmy. Lisp od té doby prošel řadou významných revizí a jeho dialekty se do značné míry lišily. Nejznámějšími dialekty Lispu pro všeobecné použití jsou Common Lisp a Scheme. Lisp byl původně vytvořen jako praktický matematický zápis pro počítačové programy, ovlivněný zápisem Lambda Calculus Alonza Churche. Rychle si získal oblibu mezi vědci v akademických kruzích, kteří jej používali jako nástroj pro rychlé vytváření prototypů a jako základ pro sofistikovanější programovací jazyky a systémy. Lisp byl původně zamýšlen jako přenosný, snadno rozšiřitelný jazyk. Měl také poskytnout jednotný přístup k symbolickým výpočtům, který by programátorovi umožnil manipulovat se symboly i čísly. Lisp má řadu vlastností, které jej činí atraktivním pro širokou škálu aplikací. Patří mezi ně např: Výkonný systém maker, který programátorovi umožňuje jazyk rozšiřovat. Bohatá sada datových typů, včetně řetězců, seznamů a vektorů. Široká škála řídicích struktur, včetně kondicionálů, iterátorů a výjimek. Jednotná syntaxe, která usnadňuje analýzu a zpracování programů v jazyce Lisp. Interaktivní prostředí, které programátorům umožňuje experimentovat a rychle ladit programy. Lisp je univerzální jazyk, který lze použít pro širokou škálu úloh, od jednoduchých skriptů až po složité aplikace. Zvláště dobře se hodí pro úlohy, které vyžadují rychlou tvorbu prototypů, jako je počítačem podporovaný návrh nebo programy umělé inteligence.