如何从 Java 过渡到 Clojure?

在发现Clojure之后,我花了几天时间沉浸在其中。

哪些项目类型适合 Java 而不是 Clojure,反之亦然,以及组合?

在Clojure之前,您从未尝试过的程序示例是什么?


答案 1

Clojure非常适合并发编程。它提供了用于处理线程的出色工具,例如软件事务内存和可变引用。

作为西部大众开发者小组的演示,Rich Hickey做了一个蚁群模拟,其中每个蚂蚁都是自己的线程,所有变量都是不可变的。即使有非常多的线程,事情也很棒。这不仅是因为 Rich 是一位了不起的程序员,还因为他在编写代码时不必担心锁定。你可以在这里查看他对蚁群的介绍


答案 2

如果你打算尝试并发编程,那么我认为clojure比你从Java中获得的开箱即用要好得多。请看一下本演示文稿,了解原因:

http://blip.tv/file/812787

我在我的博客上记录了我与Clojure的前20天

http://loufranco.com/blog/files/category-20-days-of-clojure.html

我从SICP讲座开始,然后建立了一个平行的素数筛。我还玩了宏。