Portability | portable |
---|---|
Stability | experimental |
Maintainer | Uwe Schmidt (uwe\@fh-wedel.de) |
Safe Haskell | Safe-Inferred |
Implementation of list arrows with a state
Documentation
list arrow combined with a state
Arrow (SLA s) => ArrowState s (SLA s) | |
Category (SLA s) => Arrow (SLA s) | |
Arrow (SLA s) => ArrowZero (SLA s) | |
ArrowZero (SLA s) => ArrowPlus (SLA s) | |
Arrow (SLA s) => ArrowChoice (SLA s) | |
Arrow (SLA s) => ArrowApply (SLA s) | |
Category (SLA s) | |
(Arrow (SLA s), ArrowPlus (SLA s), ArrowZero (SLA s), ArrowApply (SLA s)) => ArrowList (SLA s) | |
(Arrow (SLA s), ArrowList (SLA s)) => ArrowWNF (SLA s) | |
Arrow (SLA s) => ArrowNF (SLA s) | |
ArrowList (SLA s) => ArrowIf (SLA s) | |
ArrowList (SLA s) => ArrowNavigatableTree (SLA s) | |
(ArrowPlus (SLA s), ArrowIf (SLA s)) => ArrowTree (SLA s) | |
ArrowXml (SLA s) => ArrowDTD (SLA s) | |
(Arrow (SLA s), ArrowList (SLA s), ArrowTree (SLA s)) => ArrowXml (SLA s) |
fromSLA :: ArrowList a => s -> SLA s b c -> a b cSource
conversion of state list arrows into arbitray other list arrows.
allows running a state list arrow within another arrow:
example:
... >>> fromSLA 0 (... setState ... getState ... ) >>> ...
runs a state arrow with initial state 0 (e..g. an Int) within another arrow sequence