category-extras-0.53.5: Various modules and constructs inspired by category theory

Portabilitynon-portable (rank-2 polymorphism)
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>

Control.Monad.Indexed

Description

 

Documentation

class IxFunctor f whereSource

Methods

imap :: (a -> b) -> f j k a -> f j k bSource

class IxFunctor m => IxPointed m whereSource

Methods

ireturn :: a -> m i i aSource

class IxPointed m => IxApplicative m whereSource

Methods

iap :: m i j (a -> b) -> m j k a -> m i k bSource

class IxApplicative m => IxMonad m whereSource

Methods

ibind :: (a -> m j k b) -> m i j a -> m i k bSource

class IxMonad m => IxMonadZero m whereSource

Methods

imzero :: m i j aSource

Instances

class IxMonadZero m => IxMonadPlus m whereSource

Methods

implus :: m i j a -> m i j a -> m i j aSource

Instances

ijoin :: IxMonad m => m i j (m j k a) -> m i k aSource

(>>>=) :: IxMonad m => m i j a -> (a -> m j k b) -> m i k bSource

(=<<<) :: IxMonad m => (a -> m j k b) -> m i j a -> m i k bSource

iapIxMonad :: IxMonad m => m i j (a -> b) -> m j k a -> m i k bSource