/generics-sop

Generic Programming using True Sums of Products

Primary LanguageHaskell

generics-sop

Build Status Hackage

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.

This is the development repository. For releases, look on Hackage.

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: