你好!我不确定这是否是一个错误,所以我在这里报告并询问:“这是预期的吗?”
似乎 defrecord
和 deftype
表达式无法访问其词法闭包中的绑定。以下两个类型声明在 Clojure 1.10.1 中失败,返回 “无法在当前上下文中解析符号:x”。
(defprotocol ID
(id [x] x))
(let [x 10]
(deftype TType []
ID
(id [_] x)))
(let [x 10]
(defrecord TRecord []
ID
(id [_] x)))
谢谢!