У Emacs Lisp, якщо foo
це символ, то 'foo
і #'foo
є абсолютно рівнозначними. Остання форма (з #'
) є кращою, коли foo
є функцією, оскільки вона документує той факт, що вона призначена для функціонування.
Отже, ваші дві форми є абсолютно рівнозначними, а одна з #'
кращим.
Редагувати : як вказував Малабарба, це не зовсім вірно: #'
символи примусять компілятор байтів видавати попередження, якщо функція не визначена.
(Зауважте, що це не стосується лямбда-форм, для яких звичайна '
перешкоджає компілятору байт складати лямбда-форму, як це зафіксовано в інших місцях . Зауважте також, що це також необов'язково має місце в інших діалектах Lisp, наприклад у Звичайний Лісп #'foo
виконує раннє зв'язування.)