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

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

0 votes
ClojureScript

当前,未检查的-* 函数和宏仅仅是对原生的js运算符的别名。如果 unchecked-**-int 函数系列和宏能在 C/Java 类似的签名 int 运算中实现类似asm.js类型转换的无声溢出(正如在Clojure中),那将非常好。这也应该允许我们在 Clojure 和 ClojureScript 之间共享这样的代码,而不用担心它们不同的数值系统。

一个用例是,将哈希算法从 Java 迁移到 ClojureScript 比想象的要复杂和冗长。

6 答案

0 votes

评论者:dnolen

这个主意听起来很有趣,想看到更多关于方法、基准测试等方面的想法。

0 votes

评论者:dnolen

Bump,这些增强看起来简单且好。

0 votes

评论者:favila

我大约一周后会有时间做这个。实现非常简单(基本上使用 xor 0 到处)。目标是正确性,但我预计性能与现在大多数平台上的表现相当甚至更好。我不确定高级模式是否会降低中间截断,以及这对性能有何影响。

使用asm.js类型系统进行一些较高级别的数值分析是可能的,但我怀疑这是否值得。

0 votes

评论者:favila

我完全忘记这件事了,抱歉。我看到你已经将它安排在了“下一个”版本上。你还会分配这项任务吗,还是你仍然接受补丁修复?

0 votes

评论者:dnolen

随便吧 :)

0 votes
参考:[https://clojure.atlassian.net/browse/CLJS-773](https://clojure.atlassian.net/browse/CLJS-773)(由 favila 报告)
...