fclabels-1.0: fclabels.cabal
Name: fclabels
Version: 1.0
Author: Sebastiaan Visser, Erik Hesselink, Chris Eidhof, Sjoerd Visscher.
Synopsis: First class accessor labels.
Description: 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.
.
> 0.11.2 -> 1.0
> - Added abstract arrow based core module.
> - Allow both pure and failing labels to be derived.
> - Major API and documentation cleanup.
> - Renamed lots of exposed function names.
Maintainer: Sebastiaan Visser <code@fvisser.nl>
License: BSD3
License-File: LICENCE
Category: Data
Cabal-Version: >= 1.6
Build-Type: Simple
Library
HS-Source-Dirs: src
Other-Modules:
Data.Label.Derive
Exposed-Modules:
Data.Label
Data.Label.Abstract
Data.Label.Maybe
Data.Label.MaybeM
Data.Label.Pure
Data.Label.PureM
GHC-Options: -Wall
Build-Depends:
base < 5
, template-haskell >= 2.2 && < 2.7
, mtl >= 1.0 && < 2.2
, transformers >= 0.2 && < 0.3
Source-Repository head
Type: git
Location: git://github.com/sebastiaanvisser/fclabels.git