effect-monad-0.6: Embeds effect systems into Haskell using parameteric effect monads

Safe HaskellNone
LanguageHaskell98

Control.Effect.Maybe

Synopsis

Documentation

data F Source

Provides an indexed version of the |Maybe| monad

Instances

type Alt * IMaybe T F = U 
type Alt * IMaybe F T = U 
type Alt * IMaybe F F = F 
type Plus * IMaybe F s = F 

data T Source

Instances

type Alt * IMaybe T T = T 
type Alt * IMaybe T F = U 
type Alt * IMaybe F T = U 
type Plus * IMaybe T s = s 

data U Source

Instances

type Plus * IMaybe U s = U 

data IMaybe p a where Source

Constructors

INothing :: IMaybe F a 
IJust :: a -> IMaybe T a 
IDyn :: IMaybe s a -> IMaybe U a 

Instances

Cond * IMaybe 
Effect * IMaybe 
Show a => Show (IMaybe p a) 
type Unit * IMaybe = T 
type AltInv * IMaybe s t = () 
type Alt * IMaybe T T = T 
type Alt * IMaybe T F = U 
type Alt * IMaybe F T = U 
type Alt * IMaybe F F = F 
type Plus * IMaybe U s = U 
type Plus * IMaybe T s = s 
type Plus * IMaybe F s = F 
type Inv * IMaybe s t = ()