acme-cofunctor-0.1.0.0: acme-cofunctor.cabal
Name: acme-cofunctor
Version: 0.1.0.0
Synopsis: A Cofunctor is a structure from category theory dual to Functor
License: BSD3
License-file: LICENSE
Author: Jasper Van der Jeugt <m@jaspervdj.be>
Maintainer: Jasper Van der Jeugt <m@jaspervdj.be>
Copyright: 2014 Jasper Van der Jeugt
Category: Acme
Build-type: Simple
Cabal-version: >= 1.10
Homepage: https://github.com/jaspervdj/acme-cofunctor
Description:
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.
Library
Exposed-modules: Data.Cofunctor
default-language: Haskell98
Ghc-options: -Wall
Hs-source-dirs: src
Build-depends:
base >= 4 && < 5
Source-repository head
Type: git
Location: https://github.com/jaspervdj/acme-cofunctor