[Haskell-cafe] Is this a correct explanation of FRP?

Paul Liu ninegua at gmail.com
Wed Apr 4 17:10:44 CEST 2012

On Sun, Apr 1, 2012 at 7:03 PM, Ertugrul Söylemez <es at ertes.de> wrote:
> No, Netwire does things very differently.  Note the total absence of
> switching combinators.  Where in traditional FRP and regular AFRP you
> have events and switching in Netwire you have signal inhibition and
> selection.  AFRP is really just changes the theory to establish some
> invariants.  Netwire changes the whole paradigm.  Review alterTime as
> expressed in the Netwire framework:
>    alterTime = fullTime <|> halfTime
> This isn't switching.  It's selection.  If fullTime decides to be
> productive, then alterTime acts like fullTime.  Otherwise it acts like
> halfTime.  If both inhibit, then alterTime inhibits.  This allows for a
> much more algebraic description of reactive systems.

AFRP can do this through ArrowChoice. Maybe you can explain the
concept of "inhibition" in more detail?

I fail to grasp why this is making switches obsolete. The idea of
switch is to completely abandoning the old state. See the broken
pendulum example.

Paul Liu

More information about the Haskell-Cafe mailing list