types - Clojure类型提示语法

标签 types clojure

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

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

而在Clojure Website上,显示类型提示而没有#阅读器宏:
(defn len2 [^String x]
  ...)

哪个是对的?

最佳答案

两者都是Clojure的版本,但版本不同:从1.2版本开始,不赞成使用读取器元数据(特别是类型提示)的#^语法,而应使用^。注意#^在1.2中仍然有效;还请注意,^foo是1.2之前的(meta foo)的简写,因此,如果使用的是较早的发行版,则必须使用旧的表示法。

关于types - Clojure类型提示语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4245540/

相关文章:

haskell - Haskell 中的类型级多态性

c# 使用 lambda 检查对象是否属于某种动态类型(通过参数传递)

Groovy 强制 List 到 Map 不会抛出 ClassCastException 或者什么是 ArrayList1_groovyProxy?

haskell - 使用 GHC 泛型时参数类型错误

clojure - 如何找出 IntelliJ 中的类路径

clojure - 使用 core.async 延迟显示 http 请求微调器的惯用方法

Haskell 数据类型函数参数

Clojure : Idiomatic (when (predicate x) x)

for-loop - 在 Clojure 中生成子字符串

clojure - 如何在 Clojure 中发出警告