pez: A Pretty Extraordinary Zipper library

[ bsd3, data, library ] [ Propose Tags ]

PEZ is a generic zipper library. It uses lenses from the "fclabels" package to reference a "location" to move to in the zipper. The zipper is restricted to types in the Typeable class, allowing the user to "move up" through complex data structures such as mutually-recursive types.

Both the Typeable class and fclabels lenses can be derived in GHC, making it easy for the programmer to use a zipper with a minimum of boilerplate.

Please send any feature requests or bug reports along.

Changes 0.0.4 -> 0.1.0:

 - use fclabels 1.0
 - module renamed Data.Label.Zipper
 - 'ZPath' renamed 'Motion', define new Up type and instance
 - fclabels lenses now require wrapping with 'to'
 - 'moveTo' changed to 'move'
 - savedLens renamed flatten
 - SavedPath renamed To
 - removed experimental operators
 - using failure package for exceptions
 - etc., etc.




Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.1.0
Dependencies base (>=4 && <5), failure (>=0.1), fclabels (>=1.0 && <1.2), thrist (>=0.2 && <0.3) [details]
License BSD-3-Clause
Copyright Brandon Simmons, 2011
Author Brandon Simmons
Category Data
Home page
Source repo head: git clone -b master
Uploaded by BrandonSimmons at 2012-01-28T03:50:40Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 3505 total (0 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]