On 20/06/11 16:37, David Barbour wrote:
On Mon, Jun 20, 2011 at 7:45 AM, Richard Senington
<[email protected] <mailto:[email protected]>> wrote:
I have recently become interested in Dataflow programming and how
it related to functional languages.
I am wondering if the community has any advice on reading matter
or other directions to look at.
So far I have been looking through the FRP libraries, using
Haskell functions with lazy lists for co-routines and
the Essence of Dataflow Programming by Uustalu and Vene where they
propose using co-monads.
It looks as though Iteratees are also relevant but I have not got
round to looking at them in detail yet.
Have I missed anything?
Arrows are a useful model for dataflow programming. But several FRP
models are arrowized, so you might already have observed this. Which
FRP models have you looked at? (there are several)
I'm developing a model for reactive dataflows in open distributed
systems, called reactive demand programming (RDP). It's basically
distributed FRP with carefully constrained side-effects and signals
that model disruption. The effects model enforces spatial idempotence
and commutativity, which allows developers to perform refactoring and
abstraction similar to that in a pure functional model. That signals
model disruption allows 'open' composition and extension (e.g. runtime
plugins). RDP is more composable than FRP because client-server
relationships can be captured as regular RDP behaviors.
RDP isn't ready for release, yet, but you can read a bit more at my blog:
[1] http://awelonblue.wordpress.com/2011/05/21/comparing-frp-to-rdp/
Regards,
David Barbour
I have been looking through the papers by Conal Elliott and Paul Hudak,
Hudak's book "The Haskell School of Expression" (chapters 13,15,17) and
the latest version
of the Reactive library on Hackage.
In the past I have looked at Arrows, but I think I should have another
look now, thanks for the suggestion.
RS
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe