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

Mic*_*ent 8 language-features clojure common-lisp

我正在寻找来自除Common Lisp之外的其他语言的Clojure功能的概述.

例如:

  • STM:语言X,Y和Z.

欢迎您的意见!

Boz*_*sov 6

你可能想看看这本影响Clojure设计的书籍清单,由Rich Hickey自己编写.看看标题,你可能会发现更多的想法来自何处.


mik*_*era 2

一些功能松散地基于我所知道的其他语言:

  • 惰性求值/惰性列表:Haskell
  • 持久数据结构:Haskell 和其他纯函数式语言
  • 动态类型:任何动态语言,例如 Groovy、Javascript
  • 类型提示(用于性能):各种语言
  • 代码即数据和基于宏的元编程:LISP
  • JVM 执行和互操作性:Groovy、Scala

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

  • 使用 STM 进行Clojure 风格的并发编程
  • Clojure协议(有点像接口,但更强大)