其他回答已经给出了所有好的选择,但没有太多说明。以下是一些更详细的内容:
Racket的集成开发环境DrRacket是初学者的绝佳工具,对于更高级的Scheme编程者有很多优点。它具有良好的分析器和调试器支持(比Emacs好得多),默认使用“标准”键盘快捷键,并且非常简洁易用。然而,它有时缺乏其创建者认为令人困惑的功能;例如,仅从源代码中编译某些表达式可能会使REPL处于混乱状态,因此不提供此功能。DrRacket仅适用于Scheme的Racket方言及其衍生版本,因此如果您想使用另一个实现,应该看看:
GNU Emacs是高级Scheme编程者的另一个不错选择,他们愿意花费一些时间学习他们的编辑器。它具有强大的定制能力,几乎可以处理任何文件类型的模式,并且在处理Scheme方面表现良好,特别是安装了Quack后(Quack是Scheme的扩展名,以DrRacket的恶搞命名——理解了吗?)。它不会限制您做任何您选择的事情。然而,它的学习曲线就像砖墙一样陡峭——它的文本模型是独特的,键盘快捷键与您之前使用过的任何内容都不同(除非您使用CUA模式,这使它们更正常),并且必须使用Emacs Lisp来配置和扩展它。
一旦您习惯了其中任一个,您都会感到满意。Emacs限制较少,但难以学习;DrRacket在某些方面开箱即用的能力更强,但限制也更多,学习起来更容易。
C-x 2
C-x o
M-x run-scheme
我在Ubuntu 11.10上使用Dr. Racket时遇到了崩溃问题,而且我发现emacs不太友好。
因此,我为Enki创建了一个插件
功能非常简单。对于我的SICP练习已经足够了,但是如果您要大量编写Scheme代码,最好花时间学习emacs。
有一个使用JScheme的Eclipse插件。 -> http://jscheme.sourceforge.net/jscheme/main.html
该插件在sourceforge的zclipse页面上隐藏得很好,似乎已经不再维护: http://sourceforge.net/projects/zclipse/files/JScheme%20Plugin%20%5Bdev%5D%20%5BSDK2.1%5D/
它不能与最新版本的Eclipse一起使用,但是对于学习SICP来说,使用Eclipse Ganymede完全可以接受。
看起来有一些小问题。
我发现了一个基于 NetBeans 的 Scheme IDE,叫做 lambdaBeans。它似乎没有在积极开发中,而且我不能为它背书。