@hackage RepLib0.5.3.5
Generic programming library with representation types
Installation
Dependencies (6)
- base >=4.3 && <5
- containers >=0.4 && <0.6
- mtl >=2.0 && <2.3
- template-haskell >=2.4 && <2.11
- transformers
- type-equality >=0.1.0.2 && <0.2 Show all…
Dependents (2)
@hackage/acme-everything, @hackage/unbound
-- -- Copyright : (c) 2006-2015, RepLib team (see LICENSE) -- License : BSD
-- Maintainer : sweirich@cis.upenn.edu -- Stability : experimental -- Portability : non-portable
-- RepLib -- a library of derivable type classes based on representation types
This library contains the following modules:
Generics.RepLib.R - Basic type representations Generics.RepLib.R1 - Parameterized type representations Generics.RepLib.Derive - Template Haskell code to automatically derive representations of datatypes. Generics.RepLib.PreludeReps - Reps of Prelude types Generics.RepLib.RepAux - Helper functions to define type-indexed functions
Generics.RepLib.Lib - Examples of specializable type-indexed functions Generics.RepLib.PreludeLib - Examples type-indexed functions from prelude
Generics.RepLib.SYB.Aliases - SYB: Port of Data.Generics.Aliases Generics.RepLib.SYB.Schemes - SYB: Port of Data.Generics.Schemes
RepLib - Top-level module that re-exports all of the above
To use this library, import RepLib and derive representations of your datatypes. The "Lib" module contains a number of type-indexed operations that have been predefined.
Currently, representations of datatypes with record components, GADTs and nested datatypes cannot be automatically derived.