microlens

A tiny part of the lens library which you can depend upon

http://github.com/aelve/microlens

Version on this page:0.1.3.0@rev:1
LTS Haskell 22.21:0.4.13.1@rev:1
Stackage Nightly 2024-05-11:0.4.13.1@rev:1
Latest on Hackage:0.4.13.1@rev:1

See all snapshots microlens appears in

BSD-3-Clause licensed by Artyom
Maintained by Artyom
This version can be pinned in stack with:microlens-0.1.3.0@sha256:93989a5ce7783db91e736a0c86e2578ee62801d99fffc772793df8338e610df9,2613

Module documentation for 0.1.3.0

Depends on 1 package(full list with versions):
Used by 2 packages in nightly-2015-08-06(full list with versions):

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, at, ix, 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 and I'm still writing a tutorial for it.

Changes

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.