Функции Lisp — это исполняемый код, как и функции в других
языках программирования. В Lisp, в отличие от большинства языков, функции
также являются объектами Lisp. Нескомпилированная функция в Lisp — это лямбда-
выражение: то есть список, первый элемент которого — символ
lambda (см. Лямбда-выражения).
В большинстве языков программирования невозможно иметь функцию без имени. В Lisp функция не имеет внутреннего имени. Лямбда-выражение может вызываться как функция, даже если у него нет имени; для подчеркивания этого мы также называем его анонимной функцией (см. Анонимные функции). Именованная функция в Lisp — это просто символ с действительной функцией в своей ячейке функции (см. Определение функций).
В большинстве случаев функции вызываются, когда их имена записаны в
выражениях Lisp в программах Lisp. Однако вы можете сконструировать или
получить объект функции во время выполнения и затем вызвать его с помощью
примитивных функций funcall и apply.
См. Вызов функций.