2024 Clojure 状态调查中分享您的想法!

欢迎!请查阅关于页面以了解更多关于该运作方式的信息。

0
Clojure

编译器接受这个

(deftype foo ()
clojure.lang.IFn
(invoke (this & xs)))

然而,调用((foo.) :bar)将会抛出AbstractMethodError异常。不会想检查一下吗?

5 个答案

0

评论者:exi

这是一个http://dev.clojure.org/jira/browse/CLJ-1024的克隆,因为原始的及其附带的补丁已经忘记,原因是“它必须等待,不能在1.5中应用”,现在已经有2个主要版本了,1.7正在进行中。

我想重新提出它,或者在这个ticket中继续工作,因为我第二次遇到了这个问题,随后进行的调试会话令人烦恼。

0

评论者:jafingerhut

已发布版本是Release 1.5,但该字段只能由Clojure审核员设置。

0

评论者:exi

是的,我刚刚克隆了原始的问题。后来我意识到我无法编辑任何字段。
问题仅仅是关于在编译协议时尝试带“&”的参数列表时没有显示警告错误,因为它们被解释为变量名“&”,而不是用户可能预期的可变参数占位符。

0

评论者:michaelblume

这是1024补丁的一个向前移植

0
参考:[https://clojure.atlassian.net/browse/CLJ-1661](https://clojure.atlassian.net/browse/CLJ-1661)(由exi报告)
...