[Haskell-cafe] ANN: Elerea, another FRP library

Wolfgang Jeltsch g9ks157k at acme.softbase.org
Tue Apr 14 10:49:45 EDT 2009


Am Freitag, 10. April 2009 18:41 schrieb Patai Gergely:
> is based on some unsafePerformIO dark magic (that might easily break
> depending on many factors)

I wonder if this breaks referential transparency. Say, you define a signal s 
and use s twice in some expression. s may be evaluated once and it maybe 
evaluated twice. Does this make a difference?

In the Haddock docs, you say that repeated evaluation of the same value is 
prevented by caching. However, caching probably only works if the signal in 
question is only evaluated once. If it’s evaluated twice, the 
second “instance” probably cannot reuse cached values of the 
first “instance”. Is it possible that thereby the second “instance” has 
different values than the first one?

A well known FRP problem is that the values of a signal with internal state 
(an accumulating signal) depend on the time when the signal is started, i.e., 
when accumulation starts. When are your signals started? At evaluation time? 
If yes, doesn’t this mean that the meaning of a signal depends on evaluation 
time so that evaluating the same signal expression twice actually results in 
two different signals?

Best wishes,
Wolfgang


More information about the Haskell-Cafe mailing list