data-category-0.0.3.1: Restricted categories

Portabilitynon-portable
Stabilityexperimental
Maintainersjoerd@w3future.com

Data.Category.Hask

Description

 

Synopsis

Documentation

type Hask = (->)Source

unHaskNat :: Funct (->) d (FunctO (->) d f) (FunctO (->) d g) -> Component f g aSource

This isn't really working, and there really needs to be a solution for this.

data Zero Source

Any empty data type is an initial object in Hask.

initObjInHask :: Limit (Id (->)) ZeroSource

An alternative way to define the initial object.

termObjInHask :: Colimit (Id (->)) ()Source

An alternative way to define the terminal object.

data ProdInHask Source

The product functor, Hask^2 -> Hask

Constructors

ProdInHask 

Instances

(Dom f ~ Pair, Cod f ~ (->), Dom g ~ Pair, Cod g ~ (->)) => FunctorA ProdInHask (FunctO Pair (->) f) (FunctO Pair (->) g) 

prodInHaskAdj :: Adjunction (Diag Pair (->)) ProdInHaskSource

The product functor is right adjoint to the diagonal functor.

data CoprodInHask Source

The coproduct functor, Hask^2 -> Hask

Constructors

CoprodInHask 

Instances

(Dom f ~ Pair, Cod f ~ (->), Dom g ~ Pair, Cod g ~ (->)) => FunctorA CoprodInHask (FunctO Pair (->) f) (FunctO Pair (->) g) 

coprodInHaskAdj :: Adjunction CoprodInHask (Diag Pair (->))Source

The coproduct functor is left adjoint to the diagonal functor.