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

欢迎!请参阅关于页面了解有关如何使用本网站的一些更多信息。

0 投票
ClojureScript

目前,unchecked-*函数和宏只是简单地别名了原始的JavaScript操作符。如果unchecked-**-int系列的函数和宏能够实现类似C/Java的带符号整数操作(就像在Clojure中一样),使用asm.js转换成语法,那么这将是一个很好的功能。这样我们就可以在Clojure和ClojureScript之间共享这样的代码,而不用担心它们之间的不同数值类型。

一个用例是将哈希算法从Java移植到ClojureScript要复杂得多,也更冗长。

6 答案

0 投票

评论人:dnolen

听起来很有趣,想了解更多关于方法、基准测试等方面的想法。

0 投票

评论人:dnolen

Bump,这个改进听起来简单且良好。

0 投票

评论人:favila

我将在大约一周内有时间来做这件事。实现方法是简单的(基本上到处使用异或0)。目标是正确性,但我预期在大多数平台上性能将与现在一样或更好。我不确定高级模式是否会取消中间截断,以及这会对性能产生什么影响。

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

0 投票

评论人:favila

我完全忘记了这件事,对不起。我看到您已经为“下一个”版本安排了它。您也在分配任务吗,还是会继续接受补丁?

0 投票

评论人:dnolen

请随意吧 :)

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