欢迎!请查阅关于页面以了解更多有关此工作的信息。
Clojure 为 long、int 和 double 扫提供了优化的算术函数,但没有为 float 提供相应的函数。此外,将整数(int 或 long)转换为浮点数(float 或 double)时不使用专门的字节码。此补丁增加了 float-add/subtract/multiply/divide 以及从整数到浮点数的更高效转换。
评论者:alexmiller
我认为算术浮点操作不太可能被接受。然而,内建函数的变化可能会很有用 - 你可以将它们分成一个新的工单吗?
评论者:cgrand
我附带了一个仅包含内建函数和更全面原始强制转换的新补丁。这是我预期的拆分吗?
不,不过完全是我的错,因为我用错了词。:)
我认为编译器中为访问 I2D、L2D、I2F 和 L2F 所做的更改可能很有用(特别是 L2D) - 这些可以在新的工单中处理好。
对内建函数和数字的其它更改,难以为浮点数学提供支持,可能不会被接受。
幸运的是,我之前已经在一个独立的提交中分开了强制类型转换,然后;()
参考http://dev.clojure.org/jira/browse/CLJ-1340