Re: FRP (was: Designing Lisp from scratch)
Michael Naunton <[email protected]> Mon, 19 Mar 2007 23:01:22 -0500
| Newsgroups | gmane.comp.lang.lightweight |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 2007-03-19 at 20:11 -0700, James McCartney wrote: > On 3/18/07, Shriram Krishnamurthi <[email protected]> wrote: > > Look at > > > > http://www.cs.brown.edu/~sk/Publications/Papers/Published/ck-frtime/ > > Embedding Dynamic Dataflow in a Call-by-Value Language > > Gregory H. Cooper, Shriram Krishnamurthi > > European Symposium on Programming, 2006 > > switching topics.. > > I've been trying to figure out what FRP has that is different than > what I've been doing since 11 years ago. http://tinyurl.com/odht9 > (SuperCollider is a free open source program since 2002.) > > >From the abstract: "The essence of the embedding is to make program > expressions evaluate to nodes in a dataflow graph." > > If that is indeed the essence, SuperCollider has been functionally > composing dataflow graphs for interactive music signal processing in a > language with lexical closures since 1996. Well, the main difference is that Yampa, etc, were claiming to be a general model of time-varying computation with certain promises about space and time bounds, thus the video game implementation, etc. An interactive music SP language may be equivalent but gains less glory due to the absence of explicit claims of generality. That said, I think you're basically right that dataflow graphs plus delay elements capture the same idea. > There has been a lot of emphasis on reactive data flow, but the > interesting problems to me seem to come from combining 3 types of data > flows into a uniform model: reactive (blocked on read), generative > (blocked on write) and systolic (read and write on same clock). Well, I've always thought of them as greedy (reactive,) observable (generative,) and lazy (systolic,) but it all comes down to the same thing. Why not drop Courtney an email -- he's always gives a good, no-BS, explanation? -- Michael