by Conal Elliott and Paul Hudak
Presentation by Daniel Bugl
functional reactive programming
functional reactive animation
functional reactive animation
lbp : Time -> Event (Event ())
data Behavior a = Behavior (Time -> a)
bigger (sin time) circle `over`
bigger (cos time) square
colorCycle t0 =
red `untilB` lbp t0 *=> \t1 ->
green `untilB` lbp t1 *=> \t2 ->
colorCycle t2
untilB : Behavior a -> Event (Behavior a)
-> Behavior a
(*=>) : Event a -> (Time -> b) -> Event b
functional reactive animation
comparison of the two papers
noChange v
predicate (time^2 == 5) t0
lbp t0 .|. predicate (time^2 == 5) t0
(.|.) : Event a -> Event a -> Event a
(==>) : Event a -> (a -> b) -> Event b
(*=>) : Event a -> (Time -> b) -> Event b
(-=>) : Event a -> b -> Event b
at : Behavior a -> Time -> a