Не получается целочисленное переполнение в Clojure?

Я запускаю Clojure 1.3.0 с La Clojure в IntelliJ IDEA при чтении The Joy Of Clojure , а в разделе 4.1.3 (стр. 64) Авторы демонстрируют целочисленное переполнение с помощью следующего кода:

(+ Integer/MAX_VALUE Integer/MAX_VALUE)
;=> java.lang.ArithmeticException: integer overflow

Однако, когда я пробую его на REPL, я получаю вместо этого

user=> (+ Integer/MAX_VALUE Integer/MAX_VALUE)
4294967294

user=> Integer/MAX_VALUE
2147483647

Что здесь происходит? Почему мои целые числа добавляются правильно, а не переполняются?

7
задан wrongusername 29 December 2011 в 04:44
поделиться