Probably better to write it more generally, by creating a seq from a zipper 
and then just using the ordinary reduce function on that zip:

(defn zip-seq [f acc z]
  (map node (tree-seq branch? children z)))

(reduce f acc (zip-seq some-zipper))

On Monday, December 24, 2012 6:27:00 PM UTC-8, JvJ wrote:
>
> The other day I wrote this as a utility function because I couldn't find 
> anything like it in the zipper libary.  Am I missing something?  Is 
> something like this implemented somewhere?
>
> (defn
>   zip-reduce
>   "Reduce called on a zipper."
>   [f acc z]
>   (if (zip/end? z)
>     acc
>     (recur f (f acc z) (zip/next z))))
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to