Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (ns step5)
- (defn yrecur
- [f]
- (f f))
- (defn wrap
- [h]
- (yrecur
- (fn [f]
- (let [g (fn [n] ((f f) n))]
- (h g)))))
- (def fact
- (wrap
- (fn [g]
- (fn [n]
- (if (< n 2) 1 (* n (g (dec n))))))))
- ;; (fact 5) => 120
Add Comment
Please, Sign In to add comment