pandora-0.3.0: 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.Primary.Functor.Identity

Monad Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Monad (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Monad (State s) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

Monad (Environment e) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environment

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

Defined in Pandora.Paradigm.Primary.Transformer.Construction

(Pointable (t :> u), Bindable (t :> u)) => Monad (t :> u) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Effect.Transformer.Monadic

Monad (Tagged tag) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Tagged

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

Defined in Pandora.Paradigm.Primary.Transformer.Continuation

Monad u => Monad ((((->) s :: Type -> Type) <:<.>:> (:*:) s) := u) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

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

Defined in Pandora.Paradigm.Primary.Functor.Maybe

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

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

type Schematic Monad Maybe u Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

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

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

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

Defined in Pandora.Paradigm.Inventory.Accumulator

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

Defined in Pandora.Paradigm.Inventory.State

type Schematic Monad (State s) u = (((->) s :: Type -> Type) <:<.>:> (:*:) s) := u
type Schematic Monad (Environment e) u Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environment

type Schematic Monad (Environment e) u = ((->) e :: Type -> Type) <:.> u