functions, lazy sequences, delays and the like can refer to other bindings regardless of the order in which they appear in the letrec form.
:dependencies [[zjhmale/letrec "0.1.0"]]
(require [letrec.sweet :refer :all])
(letrec [fact (fn [n]
(if (= n 1)
1
(* n (fact (dec n)))))]
(fact 5))
Copyright © 2015 Michał Marczyk
Distributed under the Eclipse Public License, the same as Clojure.