Clojure: factorial simple causa desbordamiento de pila
¿Qué estoy haciendo mal? Recursividad simple unos pocos miles de llamadas lanzamientos profundos aStackOverflowError
.
Si el límite de recursiones de Clojure es tan bajo, ¿cómo puedo confiar en él?
(defn fact[x]
(if (<= x 1) 1 (* x (fact (- x 1)) )))
user=> (fact 2)
2
user=> (fact 4)
24
user=> (fact 4000)
java.lang.StackOverflowError (NO_SOURCE_FILE:0)