compstrat: Strategy combinators for compositional data types

[ bsd3, generics, language, library ] [ Propose Tags ]

A library for strategic programming on compositional data types. See The Essence of Strategic Programming,, by Ralf Laemmel et al.

Strategic programming is a way of allowing traversals to be written in a highly generic and composable fashion.

The names and general interface are modeled on the KURE library, but this library tries to be as composable as the lens library.

The type of a strategy combinator is the same as the Vertical type that ekmett proposed and rejected as an extension to the current lens library. A Vertical is essentially a monadic traversal. This hence could potentially be merged with the lens library.

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],,
Dependencies base (>=4.7 && <4.8), compdata (<1), mtl (<2.3), template-haskell, th-expand-syns (<=0.4), transformers (<0.5) [details]
License BSD-3-Clause
Author James Koppel
Category Language, Generics
Source repo head: git clone
Uploaded by JamesKoppel at 2015-03-23T04:07:20Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 2385 total (7 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2015-03-23 [all 1 reports]

Readme for compstrat-

[back to package description]


Strategy combinators for compositional data types