
I looked at elerea. I found it simple and nice! I just regret the fact that the SignalMonad can only be run inside IO. With reactive, you can transform signals in pure code.
I suggest unpacking the source of dow and executing it in ghci, the problem will be obvious as you play at length.
Yes, as no optimization is done? But as long as you compile the code, you don't have such a problem?
Unfortunately, Elerea doesn't really work well as an EDSL, however much I'd like it to. Its main issue is that unreferenced entities keep using CPU time until they are garbage collected -- this comes from the necessity to keep them referentially transparent
Does reactive work elsewise?
I know that every FRP framework will have its own hiccups, as it is a domain
which is still in development, but still, I found the time-leak bug (if it
is a bug) in reactive very weird.
2010/5/17 Patai Gergely
I did not look thoroughly at elerea, but at least, when I tried its sample "dungeons of wor" it worked properly ;) Elerea has its own 'beauty' though. I suggest unpacking the source of dow and executing it in ghci, the problem will be obvious as you play at length. Unfortunately, Elerea doesn't really work well as an EDSL, however much I'd like it to. Its main issue is that unreferenced entities keep using CPU time until they are garbage collected -- this comes from the necessity to keep them referentially transparent, i.e. behaving the same way regardless of how they are observed --, and currently I don't see any way to solve that without implementing a dedicated runtime for dynamic stream processing.
So there, no FRP library without a catch for you. ;)
Gergely
-- http://www.fastmail.fm - A fast, anti-spam email service.
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe