generics-sop: Generic Programming using True Sums of Products

[ bsd3, generics, library ] [ Propose Tags ] [ Report a vulnerability ]

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.

Since version 0.4.0.0, this package is now based on sop-core. The core package contains all the functionality of n-ary sums and products, whereas this package provides the datatype-generic programming support on top.

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:

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.1.0.4, 0.1.1, 0.1.1.1, 0.1.1.2, 0.2.0.0, 0.2.1.0, 0.2.2.0, 0.2.3.0, 0.2.4.0, 0.2.5.0, 0.3.0.0, 0.3.1.0, 0.3.2.0, 0.4.0.0, 0.4.0.1, 0.5.0.0, 0.5.1.0, 0.5.1.1, 0.5.1.2, 0.5.1.3, 0.5.1.4 (info)
Change log CHANGELOG.md
Dependencies base (>=4.9 && <4.21), ghc-prim (>=0.3 && <0.12), sop-core (>=0.5.0 && <0.5.1), template-haskell (>=2.8 && <2.23), th-abstraction (>=0.6 && <0.8) [details]
Tested with ghc ==8.0.2, ghc ==8.2.2, ghc ==8.4.4, ghc ==8.6.5, ghc ==8.8.4, ghc ==8.10.7, ghc ==9.0.2, ghc ==9.2.8, ghc ==9.4.8, ghc ==9.6.5, ghc ==9.8.2, ghc ==9.10.1
License BSD-3-Clause
Author Edsko de Vries <edsko@well-typed.com>, Andres Löh <andres@well-typed.com>
Maintainer andres@well-typed.com
Revised Revision 1 made by phadej at 2024-05-13T17:11:07Z
Category Generics
Source repo head: git clone https://github.com/well-typed/generics-sop
Uploaded by AndresLoeh at 2023-10-18T09:48:58Z
Distributions Arch:0.5.1.3, Debian:0.5.1.0, Fedora:0.5.1.3, LTSHaskell:0.5.1.3, NixOS:0.5.1.3, Stackage:0.5.1.4
Reverse Dependencies 74 direct, 7851 indirect [details]
Downloads 51121 total (264 in the last 30 days)
Rating 2.75 (votes: 8) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-10-18 [all 1 reports]