Clojure 快速入门指南:1/3
导读
?
本文的目标是为熟悉 Ruby、Python或者其他类似语言、并对 Lisp 或者函数式编程有一定程度了解的程序员写的 Clojure 快速入门指南。
?
为了让文章尽可能地精炼且简单易懂,本文有以下三个特点:
?
一:不对读者的知识水平作任何假设,当遇上重要的知识点时,只给出 wikipedia 等网站的链接引用而不对知识点进行解释,有需要的读者可以沿着链接查看,没需要的直接略过就行了。
?
二:和第一条类似,没有介绍所有 Clojure 的语法和库,但会给出详细资料的引用链接。
?
三:将 Clojure 中的各项语法和其他常用语言,比如 Ruby 、 Python 和 JAVA 作类比,这样可以帮助有经验的读者快速了解 Clojure 的各项功能(尽管它们在实现细节和真正概念上可能有区别)。
?
阅读完本文后,你应该可以对 Clojure 有所了解,并熟悉一些用 Clojure 写程序的惯用法。
?
?
安装并运行 Clojure
?
Clojure 运行在 JRE (JAVA Runtime Environment) 之上,因此,你需要先安装 JRE ,然后到 Clojure 的主页下载最新版的 Clojure 。
?
安装 JRE 和 Clojure 的方法因使用的系统而不同,如果你和我一样使用 Archlinux ,那么执行命令 sudo pacman -S jre clojure 即可,其他系统可以按照 JAVA 主页 和 Clojure 主页上的方法来操作:
?
安装 JRE:?http://www.oracle.com/technetwork/java/javase/downloads/index.html
?
安装 Clojure :http://clojure.org/getting_started
如果一切正常,那么现在你应该可以使用命令 clj 来调出 Clojure 的 REPL 程序了(在你的电脑上使用的命令可能有不同),用 Clojure 跟大家说声好吧:
?
?
?
下面是一些 Python 的变量名:
?
?
?
这里给出一个 Python 写的 greet-replay 函数作为参考:
?
?
比如说,我们可以将这个测试抽象成一个新的函数 same-greeting??
?
??然后可以使用新的 same-greeting? 重写之前的 greet-replay 函数:
?
期待后续。。。。4 楼 csophys 2012-07-13 写得非常好。收获好多,打算学Clojure了。期待后续!