[Haskell-cafe] ANN: Elerea, another FRP library
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?
More information about the Haskell-Cafe