why clojure

why clojure,选择Clojure的理由:

作者选择1957年的Lisp是由于一本书籍:Structure and Interpretation of Computer Programs

1. Clojure is Lisp. Lisp是一个函数性 简单 知名的语言,其语法相当简单,特别是相比F和Scala

2.Clojure is Java. Clojure和Java可以相互调用。

3.Clojure实现的是软件内存事务(STM),意味着Clojure程序员任何时候不能改变变量状态,他们必须使用类似数据库的事务管理来实现。

4.Clojure是快速的. 通常函数式语言中数据结构是不可变的。你不能向一个集合List中增加元素,你必须创建这个List的拷贝,然后加入新元素到这个拷贝中。 这种拷贝会让性能变得慢很多,而Clojure使用一种分享技术来管理不可变的数据结构,无需进行深层次结构的拷贝。这意味着Clojure运行得很快。