2010-12-16 126 views
4

Scheme vs Common-Lisp? 可以选择什么?Scheme vs Common Lisp

+12

“It depends”;) – Juliet 2010-12-16 17:37:16

+0

你想用它做什么? – 2010-12-16 17:38:51

+0

要学习函数式编程,但后来我发现Lisp有一些方言,所以我不知道哪一个。我接受任何建议。 – Damir 2010-12-16 17:40:26

回答

17

方案小巧干净,Common Lisp功能强大。

+2

PLT计划(现在称为“球拍”)干净,有据可查,并带有一个漂亮的IDE。它也是预先打包的。 Common Lisp需要一段时间才能启动并运行。如果你刚刚开始,我会从Scheme开始。 – Demosthenex 2010-12-16 19:10:25

+3

我认为这是历史。 R6RS不再干净又小巧。 Actual Scheme软件从来没有比相应的Lisp软件更干净。 – 2010-12-16 20:18:21

+0

@Rainer Joswig“相对较小”? – 2010-12-17 09:24:32

5

为了学习功能语言的目的,正如您的一条评论所指出的,Scheme的优势是成为Structure and Interpretation of Computer Programs的主题,这是2000年代初期几乎无处不在的标准本科文本,旨在让人们没有经验进入编程世界。阅读和阅读这本书并不是最简单的一本书(这可能是为什么它已慢慢流离失所),但如果你能进入它,那么通往大马士革风格的时刻就有很多。即使有人在大学读过这本书,但现在主要用程序语言工作,但最近再次阅读并再次阅读它给了我几个禅宗时刻。

打印副本仍然是标准的计算机科学教科书价格,但全文可从上面的网站获得。所以至少值得一试。

4

另一个需要考虑的选项是Clojure。这是另一种“口齿清楚的方言”,与CL有一点相似之处 - 有些曲折。使用它的优点是JVM/Java交互以及包含STM的本地并发。

虽然如果我是“只是学习”,我会选择计划,并有延续/ call-cc的领域日:-)它绝对是更多的“学术”lisp方言之一。另一方面,non-hygienic macros的纯粹疯狂...... err,power ......在CL中提供了一些有趣的宏。