Re: Designing a language for dataflow/parallelism

George Neuner <gneuner2@comcast.net>
18 Jun 2005 23:20:09 -0400

          From comp.compilers

Related articles
Designing a language for dataflow/parallelism tony@tonyRobinson.com (2005-06-13)
Re: Designing a language for dataflow/parallelism torbenm@diku.dk (2005-06-16)
Re: Designing a language for dataflow/parallelism nmm1@cus.cam.ac.uk (2005-06-16)
Re: Designing a language for dataflow/parallelism mailbox@dmitry-kazakov.de (Dmitry A. Kazakov) (2005-06-16)
Re: Designing a language for dataflow/parallelism rand@rice.edu (Randy) (2005-06-18)
Re: Designing a language for dataflow/parallelism gneuner2@comcast.net (George Neuner) (2005-06-18)
Re: Designing a language for dataflow/parallelism peteg42@gmail.com (Peter Gammie) (2005-06-19)
Re: Designing a language for dataflow/parallelism gneuner2@comcast.net (George Neuner) (2005-06-21)
Designing a language for dataflow/parallelism peteg42@gmail.com (Peter Gammie) (2005-06-26)
| List of all articles for this month |
From: George Neuner <gneuner2@comcast.net>
Newsgroups: comp.compilers
Date: 18 Jun 2005 23:20:09 -0400
Organization: Compilers Central
References: 05-06-081
Keywords: parallel, dataflow
Posted-Date: 18 Jun 2005 23:20:09 EDT

On 13 Jun 2005 17:57:19 -0400, tony@tonyRobinson.com wrote:


>There's clearly a tradeoff between expressiveness of the language and
>ability to optimise. Googling on "alias analysis" and "automatic
>scoping" gets me somewhere, for example the "why C can't be as fast as
>Fortran" debate, which is educational. However I'm really interested in
>the idea of a new language (or portable assembler, c-- style), so I'm
>looking for references, papers, projects on this sort of problem, more
>comparative analysis of different languages, or even just the right
>keywords to hit google with...


There aren't many languages *designed* for dataflow - I think because
there isn't consensus on what "dataflow" really means in terms of
nsoftware. There are languages which are more easily adaptable to the
basic ideas, however AFAIK, there has not been a lot of work done with
these languages on optimization for parallel execution - most are
single threaded models. [ You seem to be most interested in hardware
parallelism, but IMO the programming model is an important component
of parallelism. ]


When I first looked at dataflow back in the 80's the primary parallel
execution model was bag-resolution ... essentially an aggressive usage
of call-by-need. The basic idea was well outlined by Nick Carriero
and David Gelernter in their papers on Linda.


Dataflow seems to have been largely subsumed by constraint logic and
functional programming, although there are few parallel models
currently.


For implementation ideas relevant to dataflow I guess I would look at
things like Linda, Occam, MultiLisp and Mul-T, OPS-5, Prolog, Haskell
and Erlang. None of these are dataflow languages per se, but they are
easily adaptable to the model and you might get some clues from
looking at them.


George


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.