2010-12-16 124 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中提供了一些有趣的宏。