请在 2024 年 Clojure 状态调查! 中分享您的想法。

欢迎!请在 关于 页面查看更多关于如何使用本站的信息。

0
Clojure

编译器接受这一点

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

然而,调用 ((foo.) :bar) 将抛出 AbstractMethodError。是否希望进行一些检查?

5 答案

0

评论由:exi

这是一个关于 http://dev.clojure.org/jira/browse/CLJ-1024 的克隆,因为包含补丁的原问题已被遗忘,理由是“它必须等待,不能在 1.5 版中应用”,而现在已有 2 个主要版本了,1.7 正在进行中。

我想重新打开它,或者在此票中继续工作,因为我再次偶然发现了这个问题,后续的调试会话令人烦恼。

0

评论由:jafingerhut

修复版本为 Release 1.5,但该字段应由 Clojure 审查员设置。

0

评论由:exi

是的,我刚刚克隆了原问题。后来我意识到我无法编辑任何字段。
问题仅仅涉及到,尝试编译包含"&"的协议时没有警告/错误提示。因为这些"&"被解释为变量名"&",而不是用户可能期望的varargs占位符。

0
by

评论者:michaelblume

以下是1024补丁的向前移植版本

0
by
...