clojure 1.3中有哪些突破性的变化?

Art*_*ldt 21 clojure

我一直无法跟上1.3中的更改列表,最重要的是需要我更改代码的更改.

  • 发生了什么变化,
  • 什么即将改变,
  • 我在哪里可以获得最新的这些列表?

Ale*_*art 7

打破日期变化:

  • 数学运算不再推广到bignums.

  • 数学运算不再将结果缩小到可以容纳它们的最小类型.

  • Vars将不再默认为可动态绑定.^:dynamic需要时添加.


trp*_*lin 6

其他几个数字变化:

  • BigIntegers有一个新的文字:5N,作为BigInteger是5.
  • 平等规则发生了变化(也许是由于亚历克斯提到的变化而引起的?):
    • (= 2 2.0)=> false,但(== 2 2.0)=>true
    • (= 2 2M)=> false,但(== 2 2M)=>true
    • (= 2.0 2M)=> false,但是(== 2.0 2M)=>true
    • 为清楚起见:
      • (= 2 2N) => true
      • (= 2 4/2) => true
    • 您通常可以假设您需要==比较浮点数的相等性(这仍然可能是一个不稳定的命题).