Реферат: АвтоЛИСП - реализация языка программирования

Выполняет функцию, определенную <function>/<функцией> с параметрами, заданными в <list>/<списке>. Например:

(apply ' + '(1 2 3)) вводит 6

(apply 'stract' ("a" "b" "c")) вводит "abc"

APPLY работает как со встроенными (subrs), так и с определенными пользователем (эти создаются как с помощью DEFUN, так и LAMBDA) функциями.

4.20 (ascii <string>)

Эта функция вводит переход первого символа <строки> в ее знаковый код ASCII (целые числа). Это то же, что и функция ASC в языке БЕЙСИК. Например:

(ascii "A") вводит 65

(ascii "a") вводит 97

(ascii "BIG") вводит 66

4.21 (assoc <item> <alist>)

Эта функция ищет список ассоциаций <alist> для единицы (<item>) как ключевого элемента и вводит содержимое <alist>. Если <item> не найден как ключ в <alist>, ASSOC вводит ноль. Например, предположим, что список "al" определен как:

((name box) (width 3) (size 4.7263) (depth 5))

тогда:

(assoc 'size al) вводит (SIZE 4.7263)

(assoc 'weight al) вводит nil

Список ассоциаций часто используется для запоминания данных, которые могут выбираться как "ключ". Это похоже на матрицы и структуры в других языках программирования. Функция SUBST, описанная далее в этой главе, обеспечивает удобные способы отмены значений, ассоциируемые с одним ключем в перечне ассоциаций.

4.22 (atan <num1> [<num2>])

Если <num2> не задается, ATAN вводит арктангенс <num2> в радианах. <num1> может быть отрицательным, диапазон вводимых углов от -pt до +pt радиан. Например:

(atan 0.5) вводит 0.463647

(atan 1.0) вводит 0.785398

(atan -1.0) вводит -0.785398

(angtos (atan -1.0) 0 4) вводит "-45.0000"

Если заданы оба параметра (<num1> и <num2>), вводится арктангенс <num1>/<num2> в радианах. Если <num2> - ноль, вводится угол в плюс или минус 1.570796 радиан (90 или -90 градусов) в зависимости от знака <num1>. Например:

(atan 2.0 3.0) вводит 0.588002

(angtos (atan 2.0 3.0) 0 4) вводит "33.6901"

(atan 2.0 -3.0) вводит 2.553590

(angtos (atan 2.0 -3.0) 0 4) вводит "146.3099"

(atan -2.0 3.0) вводит -0.588002

(atan -2.0 -3.0) вводит -2.553590

К-во Просмотров: 565
Бесплатно скачать Реферат: АвтоЛИСП - реализация языка программирования