9:05 but, previously, I was using a map function inside the let, which was screwing with things I think, but I could easily be wrong

9:09 but this let version still terminates after the first branch, whereas I would expect the (map dw s) to continue on ever item in s... instead it executes dw on the first item in s, which returns a new s inside the new sub-instance of dw.. the new s though doesn't contain any directories so running dw on the new s's items doesn't return any sub-sub-instance s's

9:10rhickey: what language(s) have you used before? how would you write it in that?

9:13scramflot: so i map in the original dw isn't regaining control of the process. I've dabbled in java, python and ruby... I'd probably want to use a for loop.. but in the docs I was thinking filter might be appropriate. But I'm unsure how to construct a the predicate form

9:16rhickey: Your difficulties seem to be with the logic of the problem itself rather than Clojure. You should write it first in the language you know best. If you can do that without using assignment, translating the logic into Clojure should be straightforward.