Emacs Lisp и Common Lisp (SBCL является реализацией этого) являются два разные языки; это как если бы вы спрашивали, как вызывать Java System.out.println
с вашего Emacs Lisp.
Emacs Lisp используется для расширения и настройки поведения или Emacs.
Common Lisp - это язык программирования общего назначения, из которого существует несколько реализаций, одним из которых является SBCL. Это не связано с Emacs или Emacs Lisp (кроме, возможно, исторически и культурно).
SLIME - это инструмент для работы с пробегом Common Lisp изображение изнутри Emacs, вы должны сначала запустить его с M-x slime
; после того, как вы запустили SLIME, вы можете отправить формы на свой обычный образ Lisp (SBCL в вашем случае) в буфере *slime-repl sbcl*
.
Вы найдете другой буфер с именем *scratch*
, где вы можете ввести и оценить Emacs Lisp бланки. Просто помните, что это не имеет ничего общего с Common Lisp.
Но вам нужно знать, что существует расширение Emacs Lisp, которое добавляет многие общие Lisp-конструкции к Emacs Lisp, но это все еще Emacs Lisp, не путайте, если вы что-то читаете об этом.
Да, это может быть запутанным сначала, но не беспокойтесь, это только временное.
Edit: Я хотел бы добавить, что если вы заинтересованы в Common Lisp, вы должны прочитать один или все из следующих книг:
С другой стороны, если вы заинтересованы в exte nding и настройки самого Emacs, вы должны прочитать следующую книгу:
удачи.
Скорее всего, вы ошиблись в REPL. Как буфер называется, где вы это пытаетесь? – Svante
Я использую * ielm *, и это, вероятно, неправильно REPL в соответствии с ответом Хорхе. –