读书人

Clojure语言1:Symbol

发布时间: 2013-01-06 15:44:47 作者: rapoo

Clojure语言一:Symbol

Symbol书写方式:

1.开头不能是数字

2.之后可以是文字或数字和 *, +, !, -, _, ?

3./ 是特殊字符,在Symbol中只能出现一次,通常/左边是namespace。比如:my-namespace/foo。

4. . 也是特殊字符,可以出现在Symbol中多次。比如:java.util.BitSet。

5. : 可以用在Symbol中多次,但是不能连续

6. .开头或者结尾的Symbol是Clojure自己使用的Symbol. :开头或者结尾的Symbol也是Clojure自己使用的Symbol.


Clojure和一般的lisp有点区别,在Symbol这里有如下差别:

1.nil不是一个Symbol

2.keyword(关键字)不是Symbol

3.Symbol不同于Var,不是storage location

关于var参考我的后面文章:http://blog.csdn.net/sheismylife/article/details/8445916


其他Symbol作为Lisp语言的基本描述,参考我的另一篇文章:

http://blog.csdn.net/sheismylife/article/details/7466413


可以用def来定义一个Symbol,比如:

user=> (def x 5)#'user/x
定义了Symbol x,值为5,namespace是user.

读书人网 >编程

热点推荐