Difference between revisions of "Yampa/switch"
< Yampa
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
[[Image:Yampa switch.png|768px]] |
[[Image:Yampa switch.png|768px]] |
||
⚫ | |||
<source lang="haskell"> |
<source lang="haskell"> |
||
Line 7: | Line 8: | ||
</source> |
</source> |
||
+ | A switch in Yampa provides change of behavior of signal functions (SF) during runtime. The <pre>switch</pre> function is the simplest form which can only be switched once. The signature is read like this: "Be a SF which is always fed a signal of type 'in' and returns a signal of type 'out'. Start with an initial SF of the same type but which may also return a transition event of type 'Event t'. In case of an Event, Yampa feeds the variable 't' to the continuation function 'k' which produces the new SF based on the variable 't', again with the same input and output types." |
||
⚫ | |||
{{Yampa Switches}} |
{{Yampa Switches}} |
Revision as of 08:42, 2 July 2011
(download original Yampa switch.svg)
switch :: SF in (out, Event t)
-> (t -> SF in out)
-> SF in out
A switch in Yampa provides change of behavior of signal functions (SF) during runtime. The
switch
function is the simplest form which can only be switched once. The signature is read like this: "Be a SF which is always fed a signal of type 'in' and returns a signal of type 'out'. Start with an initial SF of the same type but which may also return a transition event of type 'Event t'. In case of an Event, Yampa feeds the variable 't' to the continuation function 'k' which produces the new SF based on the variable 't', again with the same input and output types."