Generic Programming using True Sums of Products

Version on this page:
LTS Haskell 15.15:
Stackage Nightly 2020-06-01:
Latest on Hackage:

See all snapshots generics-sop appears in

BSD-3-Clause licensed by Edsko de Vries, Andres Löh
Maintained by [email protected]

Module documentation for

This version can be pinned in stack with:[email protected]:d1c36b049dba0c7029f43aec28b15bff2fafd5af0a8c3270600b20deb7c916e3,3567
  • Generics
    • Generics.SOP
      • Generics.SOP.BasicFunctors
      • Generics.SOP.Classes
      • Generics.SOP.Constraint
      • Generics.SOP.GGP
      • Generics.SOP.Instances
      • Generics.SOP.Metadata
      • Generics.SOP.NP
      • Generics.SOP.NS
      • Generics.SOP.Sing
      • Generics.SOP.TH
      • Generics.SOP.Universe

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: