Lisp: Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
m lit. |
Kwadratsqr (dyskusja | edycje) m int., drobne redakcyjne - "zagnieżdżone w Lispie" wygląda mi na wtrącone określenie |
||
Linia 21:
Lisp powstał jako wygodna [[matematyka|matematyczna]] notacja dla [[program komputerowy|programów komputerowych]], oparta na [[rachunek lambda|rachunku lambda]] stworzonym przez [[Alonzo Church]]a. Szybko został najchętniej wybieranym językiem do badania i rozwoju [[sztuczna inteligencja|sztucznej inteligencji]]. Wywodzi się z niego wiele technik programistycznych, takich jak [[struktura drzewiasta|struktury drzewiaste]], [[odśmiecanie pamięci]], [[Typowanie dynamiczne|dynamiczne typowanie]] czy nowe koncepcje w [[programowanie obiektowe|programowaniu obiektowym]] ([[Common Lisp Object System]]).
Nazwa ''Lisp'' pochodzi od ''LISt Processing''. Podstawową strukturą danych w Lispie jest [[lista]]; [[kod źródłowy]] programów w Lispie składa się z list. W wyniku tego programy w Lispie mogą manipulować kodem źródłowym jak zwykłą strukturą danych. Umożliwia to pisanie [[makro|makr]], pozwalających programiście tworzyć nową składnię lub nawet małe, zagnieżdżone w Lispie, języki.
Kod tworzony jako struktura danych sprawia, że Lisp ma charakterystyczną składnię. Cały kod źródłowy ma postać tzw. ''[[S-wyrażenie|S-wyrażeń]] (S-expressions)'', czyli list otoczonych nawiasami. Wywołanie funkcji, makra lub formy specjalnej ma postać listy, której pierwszym elementem jest nazwa funkcji, a następnymi elementami – jej argumenty. Na przykład funkcję o nazwie <tt>f</tt> z argumentami <tt>a</tt>, <tt>b</tt> i <tt>c</tt> wywołuje się za pomocą kodu <tt>(f a b c)</tt>.
|