Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Library of categories, with categorical constructions on them
branch: master
Failed to load latest commit information.
Data Added the cube category
LICENSE One copyright line should be enough.
Setup.lhs Added docs and cabal stuff.
data-category.cabal Added the cube category


Data-category is a collection of categories, and some categorical constructions on them.

You can restrict the types of the objects of your category by using a GADT for the arrow type.
To be able to proof to the compiler that a type is an object in some category, objects also need to be represented at the value level.
The corresponding identity arrow of the object is used for that.

See the 'Monoid', 'Boolean' and 'Product' categories for some examples.

Note: Strictly speaking this package defines Hask-enriched categories, not ordinary categories (which are Set-enriched.)
In practice this means we are allowed to ignore 'undefined' (f.e. when talking about uniqueness of morphisms),
and we can treat the categories as normal categories.
Something went wrong with that request. Please try again.