在Clojure中是否可以在let表单中定义递归函数或者应该letfn使用它?例如,我可以使用以下方法let吗?
(defn blowStackExample []
(letfn [(blowStack []
(blowStack))]
(blowStackExample)))
Run Code Online (Sandbox Code Playgroud)
你可以这样做的方法是命名fn表单中的匿名函数:
(defn blow-stack-example []
(let [blow-stack (fn a [] (a))]
(blow-stack)))
(blow-stack-example)
Run Code Online (Sandbox Code Playgroud)