microlens: A tiny lens library with no dependencies. If you're writing an app, you probably want microlens-platform, not this.

[ bsd3, data, lenses, library ] [ Propose Tags ]

NOTE: If you're writing an app, you probably want microlens-platform – it has the most features. microlens is intended more for library writers who want a tiny lens library (after all, lenses are pretty useful for everything, not just for updating records!).

This library 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.

There's a longer readme on Github. It has a migration guide for lens users, a description of other packages in the family, a discussion of other lens libraries you could use instead, and so on.

Here are some usecases for this library:

However, don't use this library if:

As already mentioned, if you're writing an application which uses lenses more extensively, look at microlens-platform – it combines features of most other microlens packages (microlens-mtl, microlens-th, microlens-ghc).

If you want to export getters or folds and don't mind the contravariant dependency, please consider using microlens-contra.

If you haven't ever used lenses before, read this tutorial. (It's for lens, but it applies to microlens just as well.)

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

Versions [faq] 0.1.0.0, 0.1.1.0, 0.1.2.0, 0.1.3.0, 0.1.5.0, 0.2.0.0, 0.3.0.0, 0.3.1.0, 0.3.2.0, 0.3.3.0, 0.3.4.0, 0.3.4.1, 0.3.5.0, 0.3.5.1, 0.4.0.0, 0.4.0.1, 0.4.1.0, 0.4.2.0, 0.4.2.1, 0.4.3.0, 0.4.4.0, 0.4.4.1, 0.4.4.2, 0.4.4.3, 0.4.5.0, 0.4.6.0, 0.4.7.0, 0.4.8.0, 0.4.8.1, 0.4.8.2, 0.4.8.3, 0.4.9, 0.4.9.1, 0.4.10, 0.4.11, 0.4.11.1, 0.4.11.2 (info)
Change log CHANGELOG.md
Dependencies base (>=4.5 && <4.13), transformers (>=0.2) [details]
License BSD-3-Clause
Author Edward Kmett, Artyom
Maintainer Artyom <yom@artyom.me>
Revised Revision 1 made by HerbertValerioRiedel at Mon Sep 2 21:26:52 UTC 2019
Category Data, Lenses
Home page http://github.com/aelve/microlens
Bug tracker http://github.com/aelve/microlens/issues
Source repo head: git clone git://github.com/aelve/microlens.git
Uploaded by Artyom at Sat Jun 11 11:09:21 UTC 2016
Distributions Arch:0.4.11.2, Debian:0.4.9.1, Fedora:0.4.10, LTSHaskell:0.4.10, NixOS:0.4.11.2, Stackage:0.4.10, openSUSE:0.4.11.2
Downloads 41051 total (1474 in the last 30 days)
Rating 2.5 (votes: 11) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

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

For package maintainers and hackage trustees