我正在http://mitpress.mit.edu/sicp/
阅读SICP书籍要运行我应该使用解释器的示例代码吗?
我考虑过Eclipse的蒲公英Lisp插件:http://sourceforge.net/projects/dandelion-ecl/
还考虑了Windows http://www.gnu.org/software/mit-scheme/
的方案我应该使用哪一个?
阅读这个问题似乎我应该使用Scheme? :What are the actual differences between Scheme and Common Lisp? (Or any other two dialects of Lisp)
如果是,http://www.gnu.org/software/mit-scheme/就足够了吗?
答案 0 :(得分:3)
MIT-scheme应该可以运行,具体取决于您的操作系统,但它不是一个非常棒的界面。 Racket是一个非常流行的Lisp-y事物解释器,并且确实存在一个试图实现SICP方案的Racket package。它并不完美,但它是我过去用于SICP的东西,而且你在解释器上的战斗要比用MIT方案少得多。
答案 1 :(得分:1)
在DrRacket IDE中有一个SICP compatibility language。使用DrRacket有助于格式化代码,识别错误并且它具有调试器。它还支持标准Scheme以及它自己的方言,racket,它非常相似,但有很多像现代语言一样的库。
安装(安装DrRacket之后)
从终端运行:
raco pkg install sicp
你得到了很多输出,也许还有一些警告。重新启动DrRacket并将#lang racket
替换为#lang sicp
。要使图片语言添加(#%require sicp-pict)
,因此这个示例应该可以正常工作:
#lang sicp
(#%require sicp-pict)
(paint-hires (below (beside diagonal-shading
(rotate90 diagonal-shading))
(beside (rotate270 diagonal-shading)
(rotate180 diagonal-shading))))
的答案的简短版本