Bug #13104 closed
We looked at this issue at yesterday's developer meeting.
The intension was not made clear, but we confirmed that mathn's global side-effects are the nature of that library. Maybe requiring it implies your willing to accept such surprising behaviour.
Subject changed from math.rb affects Rational literals to mathn.rb affects Rational literals
Seems to be triggered by ext/mathn/rational/rational.c
and ext/mathn/complex/complex.c
, which activate "canonicalization" in rational.c
and complex.c
.
$ ruby -r mathn/rational -e 'p Rational(2/1)'
2
$ ruby -r mathn/complex -e 'p Complex("3+0i")'
3
I suppose the reasoning behind the behavior was that in mathematics generally the simplest representation of a number is used, and n/1 = n.
But what are the plans for mathn
anyway? -- It seems to be deprecated since 2.2 (#10169 ).
Target version deleted (2.5 )
mathn is out of scope from release engineering.
Status changed from Assigned to Closed
mathn was removed in Ruby 2.5.
Also available in: Atom
PDF
Like 0
Like 0 Like 0 Like 0 Like 0 Like 0