Clojure: простой факториал вызывает переполнение стека
Что я делаю неправильно? Простая рекурсия нескольких тысяч вызовов глубокого броска.StackOverflowError
Если лимит рекурсий Clojure настолько низок, как я могу на него положиться?
(defn fact[x]
(if ( (fact 2)
2
user=> (fact 4)
24
user=> (fact 4000)
java.lang.StackOverflowError (NO_SOURCE_FILE:0)