Программирование на языке Автолисп. Куляс О.С. - 29 стр.

UptoLike

Составители: 

29
меньше места, чем обычные списки; для доступа ко второму элементу
пары можно использовать функцию CDR, например:
(cons 'a 'b) возвращает (A . B)
(car (cons 'a 'b)) возвращает A
(cdr (cons 'a 'b)) возвращает B
(apply <функция> <список>)
Функция APPLY выполняет с аргументами, заданными <списком>,
действия, заданные <функцией>.Примеры:
(apply '+ '(1 2 3)) возвращает 6
(apply 'strcat '("a" "b" "c")) возвращает "abc" .
Функция APPLY работает и с встроенными функциями, и с функ-
циями, определяемыми пользователем (с помощью функций DEFUN или
LAMBDA).
(foreach <имя> <список> <выражение>)
Эта функция присваивает аргументу <имя> поочередно значение
каждого элемента аргумента <список>, вычисляя затем аргумент <вы-
ражение> для каждого элемента списка. Количество аргументов <выра-
жение> не ограничивается. Функция FOREACH возвращает результат
вычисления последнего выражения. Например, вызов
:
(foreach n '(a b c) (print n))
равносилен последовательности вызовов:
(print a)
(print b)
(print c)
если не считать того, что функция FOREACH возвращает результат
вычисления только последнего выражения.
(mapcar <функция> <список1>...<списокN>)
Функция MAPCAR возвращает результат исполнения <функции> с
отдельными элементами списков от <списка1> до <спискаN>, задавае-
мыми как аргументы <функции>. Количество списков должно совпадать
с
числом аргументов <функции>. Примеры:
                                                                    29
меньше места, чем обычные списки; для доступа ко второму элементу
пары можно использовать функцию CDR, например:

        (cons 'a 'b)              возвращает       (A . B)
        (car (cons 'a 'b))        возвращает        A
        (cdr (cons 'a 'b))        возвращает        B


    (apply <функция> <список>)
    Функция APPLY выполняет с аргументами, заданными <списком>,
действия, заданные <функцией>.Примеры:

       (apply '+ '(1 2 3))     возвращает      6

        (apply 'strcat '("a" "b" "c")) возвращает "abc" .

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

    (foreach <имя> <список> <выражение>)
    Эта функция присваивает аргументу <имя> поочередно значение
каждого элемента аргумента <список>, вычисляя затем аргумент <вы-
ражение> для каждого элемента списка. Количество аргументов <выра-
жение> не ограничивается. Функция FOREACH возвращает результат
вычисления последнего выражения. Например, вызов:

        (foreach n '(a b c) (print n))

    равносилен последовательности вызовов:

        (print a)
        (print b)
        (print c)

если не считать того, что функция FOREACH возвращает результат
вычисления только последнего выражения.


         (mapcar <функция> <список1>...<списокN>)
     Функция MAPCAR возвращает результат исполнения <функции> с
отдельными элементами списков от <списка1> до <спискаN>, задавае-
мыми как аргументы <функции>. Количество списков должно совпадать
с числом аргументов <функции>. Примеры: