Иллюстрированный самоучитель по введению в экспертные системы


Приложение функции и лямбда-исчисление - часть 2


Фактически, если определено SQUARE, в любом диалекте LISP имеем

(SQUARE 3) = ((LAMBDA (X)

( X X)) 3) = ((АХ)(Х Х))(3) = 9 .

Обратите внимание на то, что LAMBDA не является функцией. Это специальный оператор в лямбда-исчислении.

Синтаксическая форма вызова функции в языке LISP имеет вид

(<функция> <аргумент> ... <аргумент>).

Это не самая сложная синтаксическая форма, а вместе с QUOTE, LAMBDA и условными выражениями этим фактически исчерпывается все, что необходимо знать о синтаксисе языка LISP. Тем, кто по каким-то иррациональным причинам испытывает тягу к запятым, двоеточиям, точкам с запятой, палиндромам вроде (if... ft, case ... esac) и тому подобному, будет поначалу трудно свыкнуться с мыслью, что в LISP единственным ограничителем являются круглые скобки. Программа на языке LISP — это просто структура данных, и другая LISP-программа ее может читать, записывать и обрабатывать точно так же, как любой другой набор данных.




Начало  Назад  Вперед



Книжный магазин