引言
经过一些前辈的blog宣传,以及深入地了解了clojure的情况以后,下定决心想好好地把这门语言学好。简单点讲,它是一门能在JVM上运行的很年轻的Lisp方言,吸取了Lisp和Java两者的优点。光这个特点就足够让我心动了,仔细了解了后就更加向往了。本人一直在使用Emacs,看过《黑客和画家》后对Lisp更是钟爱有加,“编程是一种思维方式”,真心喜欢Lisp的语法方式,非常优雅。clojure还使得并发编程更加地简单,怎么样,有同样心动的朋友吗?一起学习吧!
以下关于clojure的介绍来自官网,偷懒,不翻译了,^_^:
Clojure is a dynamic programming language that targets the Java Virtual Machine (and the CLR, and JavaScript). It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection.
Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs.
I hope you find Clojure's combination of facilities elegant, powerful, practical and fun to use.
资料
1. 其中一些关于clojure介绍比较好的博客地址如:
http://www.iteye.com/blogs/tag/Clojure
注: 这是iteye上关于clojure的一些资源,很多clojure相关工作,包括开发环境的搭建,国外clojure相关示例的翻译等等。
2. http://www.blogjava.net/killme2008/category/45592.html
注:特别推荐这个博主,从他那里学到了非常多地知识,不光在国内推广clojure做了很多贡献,而且很多其他的如grizzly http
引擎,淘宝开源项目等都有很深地理解。
3.http://www.4clojure.com/problems
注:练习clojure的好地方啊。如果有相关Lisp和java的基础,做起来还是蛮轻松的。
注:官网