In some sense, all this was inevitable, I think. Lisp—the notion of writing your code directly in tree form—is an idea that’s discovered time and again. People have tried all sorts of crazy alternatives, writing code in XML or in opaque binary formats or using cumbersome code generators. But their artificial Byzantine empires always fall into disrepair or crush themselves into collapse while Lisp, the road that wanders through time, remains simple, elegant, and pure. All we needed to get back on that road was a modern approach, and Rich Hickey has given it to us in Clojure.引自 Foreword xviii
在写Ant script的时候,就觉得XML其实在某种程度上很像函数式语言,试图达到Homoiconicity(http://en.wikipedia.org/wiki/Homoiconicity),code as data. 又比如各种模板系统
而Clojure可以将这一切都统一起来,用一种最纯朴而又最强大的形式。所以我们可能看到一个Clojure写就的Web apps里,系统的所有部分都是一种形式,包括backend service的代码,页面模板的代码,build script的代码,前台逻辑(基于ClojureScript)