【发布时间】:2023-03-14 12:49:01
【问题描述】:
我做错了什么?几千次调用深度的简单递归会抛出StackOverflowError。
如果 Clojure 递归的限制这么低,我怎么能依赖它?
(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)
【问题讨论】:
标签: recursion clojure stack-overflow