Я хотел бы знать, почему большинство Common Lisp код, который я вижу, имеет такие вещи, как
(mapcar #'(lambda (x) (* x x)) '(1 2 3))
вместо
(mapcar (lambda (x) (* x x)) '(1 2 3))
,
который, похоже, тоже работает. Я начинаю изучать Common Lisp и иметь некоторый фон в Схеме, это меня интригует.
Изменить: Я знаю, что вам нужно # 'с именами функций, потому что они живут в другом пространстве имен, кроме переменных. Мой вопрос примерно равен # 'перед лямбдой, поскольку лямбда уже возвращает объект функции (я думаю). Тот факт, что # œ менее лямбда работает из-за расширения макросов, просто делает его более интригующим...