3 ms·
That is just a coincidence (decimal ending in "5"), plus the fact that `.to_d` does some cleanup preprocessing. Counterexample: BigDecimal("1.59999999999999
by gioele 6y ago
That is just a coincidence (decimal ending in "5"), plus the fact that `.to_d` does some cleanup preprocessing.
Counterexample:
BigDecimal("1.5999999999999996") == 1.5999999999999996.to_d
=> false
The most ergonomic way to initialize decimal numbers is IMO
"123.45".to_d
(Note the quotes around the number. `.to_d` is being called on a string.)
BigDecimal's only lossless API is through strings. It would be nice to have native support for decimals at the parser level:
0d123.45 => BigDecimal("123.45")