Discussion questions for Functional Reactive Animation
Please add questions below about the paper.
Note: Questions can be at any level of understanding. They can ask expert questions that require some background of PL and or related work, or they can be basic questions about terminology, notation or the research’s motivation (Section 1 of most papers).
I'm a little confused with the snapshot of a behavior's value on page 5. Would you explain it in details?
Having trouble understanding the toggle example in the beginning of section 4.1
Why does b need to track the time of the previous button press?
Also, what does it mean for a behaviour to support "multiple simultaneously time-transformed versions of itself."
I'm still confused as to what time means in the context of this library. Is it number of ticks, or some actual time. Would FRA be a good paradigm for event-driven systems, or is it primarily used for graphical, continuous time applications?
How do other papers fix the non causality problem that this paper introduces with its concept of the time domain?
Was this implemented in the frp computation graph style? It's hard to tell because of the use of combinators for everything.
how do we teach category theory to graphic designers?
Could we explicitly write an example program that breaks causality? Do implementations of this FRP, such as reactive banana, have any ways to enforce causality?
We have talked a little about this before, but why is having continuous time useful? It makes sense that time is continuous, but we are dealing with machines that operate at discrete intervals. It also seems like treating time as continuous requires that you integrate in some manner, which maybe be hard.
I understand that this paper was impactful because it "invented"/recognized the need for FRP. However (Haskell-ers feel free to correct me on this), it's not really in use any more - is it just old, or is that due to some more fundamental shortcoming?
I can not understand how a form of laziness can avoid trying too soon to catch events, including its semantics.
The paper talks about "lifting" the static values to the level of behaviors. What is the impact of this "lifting" functions in the implementation of behaviors?