<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
On 20/06/11 16:37, David Barbour wrote:
<blockquote
 cite="mid:BANLkTi=P2VjskYrVXEmokq9rk0hqK2iDxg@mail.gmail.com"
 type="cite">
  <div class="gmail_quote">On Mon, Jun 20, 2011 at 7:45 AM, Richard
Senington <span dir="ltr">&lt;<a moz-do-not-send="true"
 href="mailto:sc06r2s@leeds.ac.uk">sc06r2s@leeds.ac.uk</a>&gt;</span>
wrote:<br>
  <blockquote class="gmail_quote"
 style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">I
have recently become interested in Dataflow programming and how it
related to functional languages.<br>
I am wondering if the community has any advice on reading matter or
other directions to look at.<br>
    <br>
So far I have been looking through the FRP libraries, using Haskell
functions with lazy lists for co-routines and<br>
the Essence of Dataflow Programming by Uustalu and Vene where they
propose using co-monads.<br>
    <br>
It looks as though Iteratees are also relevant but I have not got round
to looking at them in detail yet.<br>
    <br>
Have I missed anything?<br>
  </blockquote>
  <div><br>
  </div>
  <div>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)</div>
  <div><br>
  </div>
  <div>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. </div>
  <div><br>
  </div>
  <div>RDP isn't ready for release, yet, but you can read a bit more at
my blog:</div>
  <div><br>
  </div>
  <div>[1] <a moz-do-not-send="true"
 href="http://awelonblue.wordpress.com/2011/05/21/comparing-frp-to-rdp/">http://awelonblue.wordpress.com/2011/05/21/comparing-frp-to-rdp/</a></div>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <div><br>
  </div>
  <div>Regards,</div>
  <div><br>
  </div>
  <div>David Barbour</div>
  <div><br>
  </div>
  </div>
</blockquote>
<br>
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 <br>
of the Reactive library on Hackage.<br>
In the past I have looked at Arrows, but I think I should have another
look now, thanks for the suggestion.<br>
<br>
RS<br>
</body>
</html>