Module documentation for 1.2.3
This package provides first class(†) functional references. In addition to the usual operations of getting, setting and composition, plus integration with the state monad, lens families provide some unique features:
Cast projection functions to read-only lenses
Cast "toList" functions to read-only traversals
Cast semantic editor combinators to modify-only traversals.
(†) For optimal first-class support use the
lens-family package with rank 2 / rank N polymorphism.
Lens.Family.Clone allows for first-class support of lenses and traversals for those who require Haskell 98.