So I am reading On Lisp + some blogs while learning Clojure (I know,
scary stuff :)
Anyway, I've been playing around to see if I can get an anonymous
recursive function to work, but alas I am still a n00b and not even
sure what Clojure's approach to this would be.
How would I do this in Clojure?:
My first attempt:
((fn [x]
(if (= x 0)
1
(* 2 (recur (dec z))))) 5)
Then my second:
((fn [x]
(let [z (if (= x 0)
1
(* 2 x))]
(recur (dec z)))) 5)
Ideally one could do:
((recursive-fn #( if (= % 0) 1 (* 2 %)) (recur it)) 5)
Obviously none work, and I believe I understand why. I just don't
understand how to actually do this or if for some reason Clojure
avoids this for some reason.
I am not actually trying to accomplish a specific task, so the example
was made to be simple not meaningful. I'm just playing around to learn
recursive functions and Clojure style.
Thanks,
Tim
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en