Как мы выяснили с
anton_arhipov: Clojure, в отличии от Groovy, стоит аккуратно использовать для работы с плавающей точкой.
Groovy выглядит так:
0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 = 1
0.1 в груви это BigDecimal, поэтому создается 10 объектов, складываются и получается еще один со значением 1.
В Clojure ситуация плачевная.
(+ 0.1 0.1 0.1
(
Read more... )