moo*_*nux 2 lisp emacs common-lisp slime
我正在使用emacs来学习如何在常见的lisp中编程,并且我遇到了一个令人困惑的问题.当我输入表达式时
(defconstant +some-constant+ (make-hash-table))
Run Code Online (Sandbox Code Playgroud)
我用它来评估它
M-x eval-buffer
Run Code Online (Sandbox Code Playgroud)
我收到了错误
Symbol's function definition is void: defconstant
Run Code Online (Sandbox Code Playgroud)
但是如果我将它复制并粘贴到粘液复制品中,它就可以完美地运行.当然,这会渲染大多数方便的键盘快捷键,用于评估程序中的lisp代码,而无需执行整个程序.每当我想测试一些东西时,我最终都会将我的缓冲区中的所有内容复制到粘液终端中.
这里发生了什么?
M-x eval-buffer将缓冲区评估为emacs lisp,而不是Common Lisp.您可能想要C-c C-k,它将编译并加载该文件.
通常,如果您看到一个没有前缀的与lisp相关的命令,slime-那么可能是emacs-lisp工具.
| 归档时间: |
|
| 查看次数: |
246 次 |
| 最近记录: |