Generic Programming using True Sums of Products

Version on this page:
LTS Haskell 18.0:
Stackage Nightly 2021-06-21:
Latest on Hackage:

See all snapshots generics-sop appears in

BSD-3-Clause licensed by Edsko de Vries, Andres Löh
Maintained by
This version can be pinned in stack with:generics-sop-,3602

A library to support the definition of generic functions. Datatypes are viewed in a uniform, structured way: the choice between constructors is represented using an n-ary sum, and the arguments of each constructor are represented using an n-ary product.

The module Generics.SOP is the main module of this library and contains more detailed documentation.

Examples of using this library are provided by the following packages:

A detailed description of the ideas behind this library is provided by the paper: