你好!我不确定这是否是错误,所以我将在此处报告并询问,“这是预期的吗?”
似乎 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)))
感谢!