fclabels: First class accessor labels.

[ bsd3, data, lenses, library ] [ Propose Tags ] [ Report a vulnerability ]

This package provides first class labels that can act as bidirectional record fields. The labels can be derived automatically using Template Haskell which means you don't have to write any boilerplate yourself. The labels are implemented as lenses and are fully composable. Labels can be used to get, set and modify parts of a datatype in a consistent way.

See Data.Label for an introductory explanation.

Internally lenses are not tied to Haskell functions directly, but are implemented as arrows. Arrows allow the lenses to be run in custom computational contexts. This approach allows us to make partial lenses that point to fields of multi-constructor datatypes in an elegant way.

See the Data.Label.Maybe module for the use of partial labels.

1.1.4 -> 1.1.4.1
  - Changed infix type variables to named type variables.
    This makes fclabels compile with GHC > 7.6.
  - Added the `osi` (flipped iso) again.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1, 0.1.2, 0.2.0, 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.4.2.1, 0.9.0, 0.9.1, 0.11.0, 0.11.1, 0.11.1.1, 0.11.2, 1.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1.0, 1.1.0.1, 1.1.0.2, 1.1.1.0, 1.1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.4.1, 1.1.4.2, 1.1.4.3, 1.1.5, 1.1.6, 1.1.7, 1.1.7.1, 2.0, 2.0.0.1, 2.0.0.2, 2.0.0.3, 2.0.0.4, 2.0.0.5, 2.0.1, 2.0.1.1, 2.0.2, 2.0.2.1, 2.0.2.2, 2.0.2.3, 2.0.2.4, 2.0.3, 2.0.3.1, 2.0.3.2, 2.0.3.3, 2.0.4, 2.0.5, 2.0.5.1
Dependencies base (<5), mtl (>=1.0 && <2.2), template-haskell (>=2.2 && <2.8), transformers (>=0.2 && <0.4) [details]
License BSD-3-Clause
Author Sebastiaan Visser, Erik Hesselink, Chris Eidhof, Sjoerd Visscher with lots of help and feedback from others.
Maintainer Sebastiaan Visser <code@fvisser.nl>
Category Data
Source repo head: git clone git://github.com/sebastiaanvisser/fclabels.git
Uploaded by SebastiaanVisser at 2012-08-23T10:11:04Z
Distributions Arch:2.0.5.1, Debian:2.0.5, Fedora:2.0.5.1, LTSHaskell:2.0.5.1, NixOS:2.0.5.1
Reverse Dependencies 50 direct, 147 indirect [details]
Downloads 75094 total (312 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]