在GNU Emacs中执行LISP程序

3
最近我一直在学习使用GNU Emacs,并对将其作为我的文本编辑器来替换Linux Mint Olivia中的文本编辑器产生了浓厚的兴趣。我还观看了MIT关于计算机程序结构解释的视频,有兴趣尝试使用LISP解决类似于Project Euler中的问题。
我已经尝试在互联网上搜索如何在Emacs中编写和执行像MIT讲座中所展示的LISP程序,例如'lisp-mode'、'lisp-interaction-mode'等,但都没有成功。
如果有任何帮助,将不胜感激。

1
使用 SLIME 通过 Emacs 缓冲区来执行外部 Lisp 进程中的程序。 - undefined
1
SICP是用Scheme编写的,它确实是一种Lisp方言,但与Emacs Lisp或Common Lisp有很大不同。请确保您找到的解决方案特别支持Scheme。 - undefined
我已经尝试过http://www.gnu.org/software/mit-scheme/,它运行良好,只是它是一个完全独立的软件。 - undefined
3个回答

3
如果您想使用REPL方式,您可以使用内置的Emacs Lisp REPL M-x ielm
如果您只想编译lisp文件并执行代码,您可以查看我最近提出的这个问题

1
我为emacs安装了Quack mode(DrRacket的对应程序),用于进行HtDP/SICP相关操作。它的效果很好,比DrRacket GUI界面还要美观。

我下载了Quack,创建了我的'.macs'文件并加载了插件。现在Quack菜单显示在emacs菜单栏上。现在当我选择运行scheme时,它会询问我有关scheme缓冲区等的信息。有什么建议吗? - undefined
嗯...不是从个人经验来说的。我只通过终端使用emacs。它具体问了什么? - undefined
它要求我选择要运行的方案(默认为mzscheme)。在后续尝试中,它会显示“当前缓冲区没有进程。请设置'scheme-buffer'或执行'run-scheme'”。 - undefined
它不使用Emacs来执行Lisp,而是需要一个外部的Scheme解释器来进行交互。 - undefined

1
最终选择了MIT-Scheme(http://www.gnu.org/software/mit-scheme)。 在那里可以完成SICP讲座中的所有练习。
或者你可以在Emacs中使用lisp-interaction-mode,并通过评估语句来移动。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接