indexed-0.1.3: Haskell98 indexed functors, monads, comonads

Copyright(C) 2008 Edward Kmett
LicenseBSD-style (see the file LICENSE)
MaintainerReiner Pope <reiner.pope@gmail.com>
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

Data.Functor.Indexed

Description

 

Synopsis

Documentation

class IxFunctor f where Source #

Minimal complete definition

imap

Methods

imap :: (a -> b) -> f j k a -> f j k b Source #

class IxFunctor w => IxCopointed w where Source #

Minimal complete definition

iextract

Methods

iextract :: w i i a -> a Source #

class IxFunctor m => IxPointed m where Source #

Minimal complete definition

ireturn

Methods

ireturn :: a -> m i i a Source #

class IxPointed m => IxApplicative m where Source #

Minimal complete definition

iap

Methods

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

(<<$>>) :: IxFunctor f => (a -> b) -> f j k a -> f j k b infixl 4 Source #

Infix alias of imap. Or, (<$>) for IxFunctor. Should be interchangeable with (<$>), but requires IxFunctor constraints instead of (possibly many) Functor constraints.

(<<*>>) :: IxApplicative f => f i j (a -> b) -> f j k a -> f i k b infixl 4 Source #

Infix alias of iap. Or, (<*>) for IxApplicative.

(<<*) :: IxApplicative f => f i j a -> f j k b -> f i k a infixl 4 Source #

(*>>) :: IxApplicative f => f i j a -> f j k b -> f i k b infixl 4 Source #