microlens

A tiny part of the lens library which you can depend upon http://github.com/aelve/microlens

Version on this page:0.2.0.0
LTS Haskell 16.4:0.4.11.2
Stackage Nightly 2020-07-04:0.4.11.2
Latest on Hackage:0.4.11.2

See all snapshots microlens appears in

BSD-3-Clause licensed by Artyom
Maintained by Artyom

Module documentation for 0.2.0.0

This version can be pinned in stack with:[email protected]:a2a3ea645f12f2b488df369b378ca531fad5d6b57fbf82640ead33d6937d92e4,2428

This is an extract from lens (with no dependencies). It's not a toy lenses library, unsuitable for “real world”, but merely a small one. It is compatible with lens, and should have same performance. It also has better documentation.

Use this library:

  • if you want to define lenses or traversals in your own library, but don't want to depend on lens

  • if you are new to lenses and want a small library to play with, but don't want to use something “inferior” or have to relearn things when/if you switch to lens

Don't use this library:

  • if you need Isos, Prisms, indexed traversals, or actually anything else which isn't defined here

  • if you think lenses compose “in the wrong order” (in which case you're looking for fclabels)

Note that microlens has no dependencies starting from GHC 7.10 (base-4.8). Prior to that, it has to depend on transformers-0.2 or above.

Also note that it's not done yet and there's a lot of things missing.

Changes

0.2.0.0

  • Removed toListOf.
  • Removed +~, -~, *~, //~ and the Lens.Micro.Extras module.

0.1.5.0

  • Added ix and at.
  • Added traversed.
  • Moved some things into Lens.Micro.Internal.
  • Bumped base version.

0.1.3.0

  • Moved some things into Lens.Micro.Type and Lens.Micro.Classes.
  • Each and Field* aren’t exported by Lens.Micro now.

0.1.2.0

  • Added each.

0.1.1.0

  • Added ASetter', which is useful because we can’t provide real Setter and Setter'.

0.1.0.0

First release.

Depends on 1 package(full list with versions):