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

欢迎!请查看关于页面以了解更多关于这个功能的信息。

0
ClojureScript

普通函数(它们只是JavaScript函数)没有这样的限制。对于IFn实现者,我们不应该允许超过21个参数的可变数量,我们应该将第21个参数的可变数量转换为可变参数签名。

3个回答

0
回答 by

评论者:justiniac

{quote}我们应该将第21个参数的可变数量转换为可变参数签名{quote}
除非有误解,否则不可行使。在协议中不允许可变参数签名。

{quote}我们不应该允许超过21个参数{quote}
产生分析器警告是你想要的吗?

0
回答 by

评论者:darwin

我相信我在使用core.async(link: 1)的代码中遇到了这个问题。

如果现在不能实现,我请求至少发布编译器警告。这个问题表现为无限递归循环,最终导致神秘的堆栈溢出。

(link: 1) https://github.com/binaryage/dirac/commit/cce56470975a287c0164e6f79cd525d6ed27a543

0
回答 by
参考资料:https://clojure.atlassian.net/browse/CLJS-1447 (由dnolen汇报)
...