ВУЗ:
Составители:
Рубрика:
17
(null a) возвращает nil
(null b) возвращает nil
(null c) возвращает T
(null '()) возвращает T
Функции сравнения выражений
(eq <выражение1> <выражение2>)
Эта функция устанавливает идентичность выражений <выраже-
ние1> и <выражение2>; выражения идентичны, если они связаны с од-
ним и тем же объектом (скажем, с помощью функции "setq"). Функция EQ
возвращает "Т", если выражения идентичны, и "nil" в
противном случае.
Обычно эта функция используется для установления идентичности двух
списков. Например, если даны присваивания:
(setq f1 '(a b c))
(setq f2 '(a b c))
(setq f3 f2)
то
(eq f1 f3) возвращает nil (f1 и f3 -- разные списки!)
(eq f3 f2) возвращает T (f3 и f2 -- это один и тот же список)
Смотрите также описание функции EQUAL.
(equal <выражение1> <выражение2>)
Эта функция устанавливает, равны или нет аргументы <
выраже-
ние1> и <выражение2>; выражения равны между собой, если их вычис-
ление приводит к одному и тому же результату. Если даны следующие
присваивания:
(setq f1 '(a b c))
(setq f2 '(a b c))
(setq f3 f2)
то
(equal f1 f3) возвращает Т (вычисление f1 и f3 дает одинако-
вый результат)
(equal f3 f2) возвращает Т (f3 и f2 -- это один и тот же список)
Заметим, что для одних
и тех же списков отношение EQUAL может
выполняться, а отношение EQ - нет. Если для каких-либо атомов вы-
полняется отношение EQUAL, то для них выполняется и отношение EQ.
Кроме того, если для двух списков или атомов выполняется отношение
EQ, то для них выполняется и отношение EQUAL.
17 (null a) возвращает nil (null b) возвращает nil (null c) возвращает T (null '()) возвращает T Функции сравнения выражений (eq <выражение1> <выражение2>) Эта функция устанавливает идентичность выражений <выраже- ние1> и <выражение2>; выражения идентичны, если они связаны с од- ним и тем же объектом (скажем, с помощью функции "setq"). Функция EQ возвращает "Т", если выражения идентичны, и "nil" в противном случае. Обычно эта функция используется для установления идентичности двух списков. Например, если даны присваивания: (setq f1 '(a b c)) (setq f2 '(a b c)) (setq f3 f2) то (eq f1 f3) возвращает nil (f1 и f3 -- разные списки!) (eq f3 f2) возвращает T (f3 и f2 -- это один и тот же список) Смотрите также описание функции EQUAL. (equal <выражение1> <выражение2>) Эта функция устанавливает, равны или нет аргументы <выраже- ние1> и <выражение2>; выражения равны между собой, если их вычис- ление приводит к одному и тому же результату. Если даны следующие присваивания: (setq f1 '(a b c)) (setq f2 '(a b c)) (setq f3 f2) то (equal f1 f3) возвращает Т (вычисление f1 и f3 дает одинако- вый результат) (equal f3 f2) возвращает Т (f3 и f2 -- это один и тот же список) Заметим, что для одних и тех же списков отношение EQUAL может выполняться, а отношение EQ - нет. Если для каких-либо атомов вы- полняется отношение EQUAL, то для них выполняется и отношение EQ. Кроме того, если для двух списков или атомов выполняется отношение EQ, то для них выполняется и отношение EQUAL.
Страницы
- « первая
- ‹ предыдущая
- …
- 15
- 16
- 17
- 18
- 19
- …
- следующая ›
- последняя »