Слизь: код из буфера обычно не оценивается в ответе
Я просто хотел бы запустить весь буфер вSLIME REPL, выполняя Mx slime-eval-buffer
Модель не такова, что «вычисляется в SLIME REPL» из исходного буфера.Один оценивает код в подключенном Лиспе.Этот подключенный Lisp может порождать поток для каждого запроса оценки.
Например, вы можете видеть, что после оценки буфера обычные переменные REPL, такие как *
(последний результат), не обновляются.
Когда вы вставляете код в буфер REPL, вы выполняете его оттуда, и он выполняет код в REPL.
Слизь: фактически выполняет оценку из буфера в REPL
Вы можете оценить код из буфера Lisp в REPL.Смотрите команду c-u m-x slime-eval-last-expression-in-repl
или короче c-u c-c c-j
.Модификатор c-u
вызывает немного другое поведение с пакетами:
- переключение на буфер REPL
- переключение на пакет исходного буфера
- оценка исходного кода вREPL (включая настройку переменных REPL)
- печатать результат в буфере REPL (включая настройку переменных REPL)
- не переключать REPL обратно в его более ранний пакет
Примечание : это поведение характерно для SLIME и не обязательно, как ведут себя другие среды.