Clojure中的功能概述来自CL之外的其他语言

时间:2010-06-11 17:56:59

标签: clojure language-features common-lisp

我正在寻找有关Clojure功能的概述,这些功能来自Common Lisp以外的其他语言。

例如:

  • STM:语言X,Y和Z

欢迎您提出意见!

3 个答案:

答案 0 :(得分:6)

你可能想看看由Rich Hickey自己编写的这个list of books, that influenced Clojure's design。看看这些标题,你可能会想出更多的想法来自何处。

答案 1 :(得分:2)

有些功能基于我所知道的其他语言:

  • 懒惰评估/懒惰列表:Haskell
  • 持久data structures:Haskell和其他纯函数式语言
  • Dynamic typing:任何动态语言,例如Groovy,Javascript
  • 类型提示(用于表现):各种语言
  • 代码是数据和macro based元编程:LISP
  • JVM执行和interoperability:Groovy,Scala

Clojure中我认为非常原创的想法:

答案 2 :(得分:0)

clojure中的STM来自于并发和事务领域的艰苦研究,并且在Haskell(格拉斯哥编译器)和最近的Fortress(Sun的高性能数字计算语言)中实现