rsagl-frp-0.6.0.0: The RogueStar Animation and Graphics Library: Functional Reactive Programming

RSAGL.FRP.FactoryArrow

Synopsis

Documentation

newtype FactoryArrow m n i o Source

An Arrow that constructs an associated monadic computation.

Constructors

FactoryArrow 

Fields

runFactory :: m (Kleisli n i o)
 

Instances

(Monad m, Monad n) => ArrowChoice (FactoryArrow m n)

A choice is constructed at factory time whether or not the constructed action is ever evaluated.

(Monad m, Monad n) => Arrow (FactoryArrow m n) 
(Monad m, MonadPlus n) => ArrowZero (FactoryArrow m n) 
(Monad m, MonadPlus n) => ArrowPlus (FactoryArrow m n)

As with ArrowChoice, both branches are constructed at factory time whether or not the constructed actions are ever evaluated.

Monad m => ArrowApply (FactoryArrow m m)

Careful! To implement ArrowApply, the factory action must run imbedded in the constructed action.

(Monad m, MonadFix n) => ArrowLoop (FactoryArrow m n) 
(Monad m, Monad n) => Category (FactoryArrow m n)