我一直在使用print eval循环,但是我应该使用其他东西吗?
答案 0 :(得分:1)
使用 Emacs,并在其中使用 Geiser 来访问 REPL 并帮助编辑方案文件。它还可以处理各种 Scheme REPL,例如 Chez Scheme、Racket、MIT Scheme、Guile、Chicken、Gambit 和 {{3} } 毫不费力。
答案 1 :(得分:0)
REPL就是这样做的地方,是的。
大多数人在命令行中使用REPL之上的内容,例如emacs。我使用xscheme
emacs库。在我看来,替代方案并不是很好,只使用命令行是不可容忍的。
答案 2 :(得分:0)
使用DrRacket。在此处下载:http://download.racket-lang.org/
答案 3 :(得分:0)
您可以使用GNU Guile Scheme编写脚本来实现SICP中的练习。大多数内置程序都没有问题,语法没有区别。
在Linux中,
在脚本文件的开头使用shebang表示法编写脚本
#!/ usr /..& lt; guile interpreter的地址> \
-e<应首先运行的程序的名称> -s
!#
示例
#!/usr/local/bin/guile \
-e main -s
!#
(define main (args)
(display (+ 3 4))
(newline))
使用chmod + <filename>
使文件可执行并运行它./& lt; filename&gt;
P.S。 Scheme文件使用.scm文件扩展名保存。
答案 4 :(得分:0)
如果你正在使用Racket,只需使用DrRacket。
如果您正在使用MIT Scheme,您可能希望使用Edwin,这是与Mit Scheme捆绑在一起的Emacs的衍生产品,最初是为SICP而构建的。 Edwin是一个emacs衍生品,所以如果你已经了解Emacs,那么你将与Edwin相处得很好。如果您不了解emacs,基本知识是:
这应该足以开始使用Edwin。能够只编辑函数的定义,重新评估您编辑的定义,让新版本在动态环境中开始工作,真是太棒了。