Clojure类型提示语法

时间:2010-11-22 12:48:38

标签: types clojure

在“Programming Clojure”一书中(Halloway,S。,(2009).Program Clojure.Raleigh,NC:Pragmatic Bookshelf。)他使用语法显示了类型提示

(defn describe-class [#^Class c]
  ...)

Clojure Website上,显示的类型提示没有#阅读器宏:

(defn len2 [^String x]
  ...)

哪个是对的?

1 个答案:

答案 0 :(得分:14)

两者都是,但在不同版本的Clojure中:从1.2版本开始,不推荐使用读者元数据的#^语法(特别是类型提示),而是使用^。请注意,#^仍然在1.2中工作;另请注意,^foo是1.2之前的(meta foo)的简写,因此如果您使用旧版本,则 使用旧的表示法。