lisp - 从初学者的角度来看,Clojure 更接近于 Scheme 还是更接近于 Common Lisp?

标签 lisp clojure scheme

<分区>

如果我想学习 Clojure,我应该从学习 Scheme 还是 Common Lisp 开始?

或者 Clojure 是否与这两者有很大不同,我应该开始自学 Clojure?

最佳答案

学习所有这三种方法对您大有裨益,这样您就可以选择最适合您需要的一种方法。这三者各有优缺点。

Clojure 有点像 Scheme,因为它主要是函数式语言,并且是 Lisp1 . Clojure 还借鉴了 Common Lisp 的东西,比如多方法和宏,人们总是将很酷的 Common Lisp 东西作为库移植到 Clojure。在编写 Clojure 之前,Clojure 的创建者本人就是一名 Common Lisp 黑客。 Clojure 从 Scheme 和 CL 中借用了大量术语和约定(但在许多领域也有自己的风格)。

现在关于 Clojure 的文献并不多,它是一种如此新的语言(只有 one Clojure book so far)。但是有很多很好的面向 Scheme 的书籍,比如 SICPThe Little Schemer / The Seasoned Schemer .还有很好的 CL 书籍,例如 PCL ,以及许多其他的。

Lisp 也有很多历史,如果没有别的,了解历史、了解 Clojure 偏离它的位置和原因对您有好处。

我建议从 Scheme 开始,因为它是三种语言中最简单的,因此也最容易学习。然后涉足 CL 和 Clojure,直到你掌握了一些东西,然后全力以赴地学习你喜欢的两者中的任何一个。

关于lisp - 从初学者的角度来看,Clojure 更接近于 Scheme 还是更接近于 Common Lisp?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1412981/

相关文章:

lisp - 从 CCL 检索(加载)ed 源代码?

lisp - 是否有使用正序求值的 Scheme 解释器?

clojure - 在 Lisp 中,表单和文件是什么关系?

clojure - 如何在同一服务器上运行多个 Ring 应用程序?

lisp - 是否有实现条件重启系统的书籍/指南

graphics - 使用graphics-draw-line定义过程

macos - 在 Mac OS X(任何方言)上安装 lisp 的建议?

clojure - leiningen new 抛出异常

bash - 使用系统执行某些操作时如何防止代码注入(inject)?

clojure - 在 Clojure 中实现整数?计划中