pandora-0.2.5: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Functor.Monad

Synopsis

Documentation

class (Pointable t, Bindable t) => Monad t Source #

Let f :: (Pointable t, Bindable t) => a -> t a
Let g :: (Pointable t, Bindable t) => a -> t a
Let h :: (Pointable t, Bindable t) => t a
When providing a new instance, you should ensure it satisfies the three laws:
* Left identity: point a >>= f ≡ f a
* Right identity: h >>= point ≡ h
* Associativity: h >>= (\x -> f x >>= g) ≡ (h >>= f) >>= g
Instances
Monad Identity Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Identity

Monad Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Monad (Proxy :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Proxy

Monad (State s) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

Monad (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion

Monad (Environment e) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environment

(Avoidable t, Alternative t) => Monad (Twister t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Twister

Monad (Tagged tag) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Tagged

Monad t => Monad (Continuation r t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Continuation

Monad u => Monad (UT Covariant Covariant Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Monad u => Monad (UT Covariant Covariant (Conclusion e) u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion

Monad u => Monad (TUT Covariant Covariant Covariant ((->) s :: Type -> Type) u ((:*:) s)) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

type Schematic Monad Maybe u Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

type Schematic Monad (State s) u Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

type Schematic Monad (State s) u = TUT Covariant Covariant Covariant ((->) s :: Type -> Type) u ((:*:) s)
type Schematic Monad (Accumulator e) u Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Accumulator

type Schematic Monad (Conclusion e) u Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion

type Schematic Monad (Environment e) u Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environment

type Schematic Monad (Environment e) u = TU Covariant Covariant ((->) e :: Type -> Type) u