The fclabels package

[Tags: bsd3, library]

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.0.4 -> 1.0.5
   - Relaxed template-haskell dependency constraint for GHC 7.4
   - Relaxed transformers dependency constraint
   (thanks to Claude Heiland-Allen)

Properties

Versions0.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
Dependenciesbase (<5), mtl (>=1.0 && <2.2), template-haskell (>=2.2 && <2.8), transformers (>=0.2 && <0.4)
LicenseBSD3
AuthorSebastiaan Visser, Erik Hesselink, Chris Eidhof, Sjoerd Visscher.
MaintainerSebastiaan Visser <code@fvisser.nl>
CategoryData
Source repositoryhead: git clone git://github.com/sebastiaanvisser/fclabels.git
UploadedSat Jul 7 21:11:01 UTC 2012 by SebastiaanVisser
DistributionsDebian:1.1.4.3, NixOS:2.0.2, Stackage:2.0.2
Downloads11959 total (683 in last 30 days)
StatusDocs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees