Skip to content
This repository was archived by the owner on Feb 2, 2021. It is now read-only.

Latest commit

 

History

History
115 lines (76 loc) · 2.12 KB

File metadata and controls

115 lines (76 loc) · 2.12 KB

Module Data.Functor.Day.Hom

The internal hom in the category of functors with Day convolution as the monoidal tensor.

Hom

newtype Hom f g a

This is the internal hom in the category of functors with Day convolution as the monoidal tensor.

Instances
(Functor f) => Functor (Hom f g)
(Extend f, Bind g) => Apply (Hom f g)
(Comonad f, Monad g) => Applicative (Hom f g)
(Comonad f, Monad g) => Bind (Hom f g)
(Comonad f, Monad g) => Monad (Hom f g)
(Comonad f) => MonadTrans (Hom f)

type (⊸)

infixr 5 type Hom as ype (⊸

hom

hom :: forall f g a. (forall r. f (a -> r) -> g r) -> Hom f g a

runHom

runHom :: forall f g a r. Hom f g a -> f (a -> r) -> g r

curryHom

curryHom :: forall f g h. (fgh) ~> fgh

The curry function for the internal hom object Hom

uncurryHom

uncurryHom :: forall f g h. Functor f => Functor g => (fgh) ~> fgh

The uncurry function for the internal hom object Hom

introHom

introHom :: forall f g h. (fg ~> h) -> f ~> gh

elimHom

elimHom :: forall f g h. Functor g => (f ~> gh) -> fg ~> h

introHom'

introHom' :: forall f g. Functor f => (f ~> g) -> Identity ~> fg

elimHom'

elimHom' :: forall f g. Functor f => (Identity ~> fg) -> f ~> g

composeHom

composeHom :: forall f g h. Functor f => (gh) ⊗ (fg) ~> fh

The composition map for the internal hom object Hom

evalHom

evalHom :: forall f g. Functor f => (fg) ⊗ f ~> g

The evaluation map for the internal hom object Hom

pairingHom

pairingHom :: forall f g. fg -> f ~> gIdentity

Hom generalizes pairings which have been applied to their first argument.

pairHom

pairHom :: forall f. Functor f => f ⋈ (fIdentity)

Every functor f pairs with f ⊸ Identity.