I see your point. Still it seems odd that the default zipper generating function isn't one that understands the "big 4" clojure datastructures.
On Nov 8, 8:04 pm, Alan Malloy <[email protected]> wrote: > They have a different make-node function, so that when you edit a > vector-zip you get vectors instead of something else. It's also easy > to imagine your "data units" are simple vectors, grouped together in > some kind of list structure. Then you would want the zipper to tell > you "hey, this node is a leaf" for vectors - thus seq-zip. > > On Nov 8, 7:21 pm, George Jahad <[email protected]> wrote: > > > Now that I think of it, why are seq-zip and vector-zip separate > > functions? Why not a single function that handles both seq and > > vectors, and sets and maps too? > > > What am I missing? > > > On Nov 1, 8:56 pm, George Jahad <[email protected]> wrote: > > > > surely this one's been written before, but i needed it the other day > > > and couldn't find it. > > > > form-zip returns a zipper from a clojure form. > > > > user=> (require '[clojure.zip :as zip]) > > > user=> (use 'form-zip.core) > > > user=> (-> '{1 2 3 4} form-zip zip/next zip/remove zip/root) > > > {3 4} > > > > fz-node-seq returns a seq of the nodes. > > > > user=> (fz-node-seq '{1 2 3 4}) > > > ({1 2, 3 4} [1 2] 1 2 [3 4] 3 4) > > > > a one hour hack, probably full of edge cases i haven't thought of. > > > > on clojars and github:https://github.com/GeorgeJahad/form-zip > > -- 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
