Zipper-like structures that:
- Store the path from the root to the selected node in easily retrievable form
- Have a uniform internal tree structure (a
:children
vector in each branch node)
I use this in Flense to support paredit-like transformations on arbitrary Clojure source code. Since the zipper structure is "just a map", I don't have to do any extra work to get it to play well with Om.
Add to your project.clj
:
[mkremins/xyzzy "0.3.4"]
MIT License. Hack away.