The algebraic-classes package

[Tags:bsd3, library]

Algebraic classes are type classes where all the methods return a value of the same type, which is also the class parameter. Examples from base are Num and Monoid.

F-algebras are functions f a -> a, where the functor f is called the signature, and the type a the carrier.

This package relates these 2 concepts, and can create conversions between the two using Template Haskell. More specifically, it can generate:

This is useful because type classes are more commonly used in Haskell than F-algebras, but F-algebras are easier to work with, because they are just functions.


Versions 0, 0.1, 0.2, 0.2.1, 0.3, 0.3.1, 0.3.2, 0.4, 0.5, 0.5.1, 0.5.2, 0.6, 0.7, 0.7.1
Change log CHANGELOG
Dependencies base (==4.9.*), syb (==0.6.*), template-haskell (==2.11.*) [details]
License BSD3
Author Sjoerd Visscher
Category Data, Generics, Math
Home page
Bug tracker
Source repository head: git clone git://
Uploaded Sat Jan 28 14:24:10 UTC 2017 by SjoerdVisscher
Distributions NixOS:0.7.1
Downloads 2982 total (99 in the last 30 days)
0 []
Status Docs available [build log]
Last success reported on 2017-01-28 [all 1 reports]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees