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-Inferred
LanguageHaskell98

Control.Comonad.Indexed

Description

 

Documentation

class IxFunctor (f :: k -> k1 -> Type -> Type) where Source #

Methods

imap :: forall a b (j :: k) (k2 :: k1). (a -> b) -> f j k2 a -> f j k2 b Source #

class IxFunctor w => IxCopointed (w :: k -> k -> Type -> Type) where Source #

Methods

iextract :: forall (i :: k) a. w i i a -> a Source #

class IxCopointed w => IxComonad (w :: k -> k -> Type -> Type) where Source #

Methods

iextend :: forall (j :: k) (k1 :: k) a b (i :: k). (w j k1 a -> b) -> w i k1 a -> w i j b Source #

iduplicate :: forall {k1} w (i :: k1) (k2 :: k1) a (j :: k1). IxComonad w => w i k2 a -> w i j (w j k2 a) Source #