| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Control.Arrow.Machine
Contents
- module Control.Arrow.Machine.Event
- module Control.Arrow.Machine.Utils
- module Control.Arrow.Machine.Plan
- module Control.Arrow.Machine.Exception
- module Control.Arrow.Machine.Running
- module Control.Arrow.Machine.ArrowUtil
- data ProcessA a b c
- fit :: (Arrow a, Arrow a') => (forall p q. a p q -> a' p q) -> ProcessA a b c -> ProcessA a' b c
Modules
module Control.Arrow.Machine.Event
module Control.Arrow.Machine.Utils
module Control.Arrow.Machine.Plan
The transducer arrow
The stream transducer arrow.
To construct ProcessA instances, use Plan,
arr, functions declared in Utils,
or arrow combinations of them.
May use ArrowChoice and ArrowLoop instance too.
but there is a limitation that loop cannot propagate Events to upstream.
In such case, use feedback instead.
Instances
| (ArrowApply a, ArrowReader r a) => ArrowReader r (ProcessA a) | |
| ArrowApply a => Category * (ProcessA a) | |
| (ArrowApply a, ArrowApply a', ArrowAddReader r a a') => ArrowAddReader r (ProcessA a) (ProcessA a') | |
| ArrowApply a => ArrowChoice (ProcessA a) | |
| ArrowApply a => Arrow (ProcessA a) | |
| (ArrowApply a, ArrowLoop a) => ArrowLoop (ProcessA a) | |
| Arrow a => Profunctor (ProcessA a) |