explicit-constraint-lens: Fully-flexible polymorphic lenses, without any bizarre profunctors

[ data, gpl, library ] [ Propose Tags ]

A snowclone of the great lens library. It implements the full hierarchy from isomorphisms to setters and folds, but instead of the Van Laarhoven implementation with universally-quantified functor mappings (powerful and elegant, but infamously beginner-scaring), it encapsulates the various realworld-usecase signatures like get+set or build+distinguish in a well-confined type family and expresses the relations between the different optics explicitly, with a dedicated class hierarchy.

See the Readme for details on how this library differs from the alternatives. See the Haddocks to learn how to use it.


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS]
Dependencies base (>=4.8 && <4.11) [details]
License GPL-3.0-only
Author Justus Sagemüller
Maintainer (@) jsag $ hvl.no
Revised Revision 1 made by leftaroundabout at 2019-07-12T09:46:29Z
Category Data
Home page https://github.com/leftaroundabout/explicit-constraint-lens
Uploaded by leftaroundabout at 2017-12-30T20:54:40Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 910 total (4 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-12-31 [all 1 reports]