The acme-cofunctor package

[Tags:bsd3, library]

A Cofunctor is a structure from category theory dual to Functor.

A Functor is defined by the operation fmap:

 fmap :: (a -> b) -> (f a -> f b)

This means that its dual must be defined by the following operation:

 cofmap :: (b -> a) -> (f b -> f a)

Since beginning his investigations, the author of this package has discovered that this pattern is at least as commonly used as Functor. In fact, many ubiquitous Haskell types (e.g. [], Maybe, ((->) a) turn out to have a Cofunctor instance.


Dependencies base (==4.*) [details]
License BSD3
Copyright 2014 Jasper Van der Jeugt
Author Jasper Van der Jeugt <>
Maintainer Jasper Van der Jeugt <>
Category Acme
Home page
Source repository head: git clone
Uploaded Fri Nov 28 16:23:30 UTC 2014 by JasperVanDerJeugt
Distributions NixOS:
Downloads 284 total (5 in the last 30 days)
1 []
Status Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees