algebraic-classes: Conversions between algebraic classes and F-algebras.

[ bsd3, data, generics, library, math ] [ Propose Tags ]

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, 0.8, 0.9, 0.9.1
Change log CHANGELOG
Dependencies base (>=4.10 && <4.12), syb (==0.7.*), template-haskell (>=2.12 && <2.14) [details]
License BSD-3-Clause
Author Sjoerd Visscher
Maintainer sjoerd@w3future.com
Category Data, Generics, Math
Home page https://github.com/sjoerdvisscher/algebraic-classes
Bug tracker https://github.com/sjoerdvisscher/algebraic-classes/issues
Source repo head: git clone git://github.com/sjoerdvisscher/algebraic-classes.git
Uploaded by SjoerdVisscher at Sun Mar 11 21:11:41 UTC 2018
Distributions NixOS:0.9.1
Downloads 5407 total (17 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-03-11 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees