[Haskell-cafe] FRP, Simulations and Time (Sodium et. al)

martin martin.drautzburg at web.de
Mon Mar 17 18:07:09 UTC 2014


I stumbled across avika but haven't looked at it. One of my problems is to decide where to dive in. Should I look at
yampa, sodium or avika when I want to do simulations?

Am 03/17/2014 07:01 AM, schrieb David Sorokin:
> Martin,
> 
> It depends on that how FRP is defined.
> 
> So, in F# it is usually associated with the Async monad and IObservable interface.
> 
> If we will follow in the same direction then the short answer is definitely yes. An example is my simulation library
> Aivika [1].
> 
> My Process monad allows describing the discontinuous processes (inspired by the Async monad from F#). There is also the
> Signal type (inspired by the .NET IObservable interface) that allows notifying about some (.NET-like) events such as an
> update of the variable.
> 
> Then the characteristic function in a context of FRP would be the next one:
> 
> processAwait :: Signal a -> Process a
> 
> There is an opposite direction from the Process computation to signals through the Task type but it is a little bit
> complicated as the discontinuous process can be canceled, or an IO exception may arise within the computation.
> 
> But the simulation field is too big and diverse to assert something general.
> 
> Thanks,
> David
> 
> [1] http://hackage.haskell.org/package/aivika



More information about the Haskell-Cafe mailing list