This fairly detailed presentation of the MIT tagged-token dataflow project begins with the authors’ basic model of dataflow and covers both language and architecture approaches currently used in the project. As such, it serves well both as an introduction for those unfamiliar with dataflow and as a current status report for those with a background in the area. The examples in this paper are all short and simple, but the extensive list of references points to many other works that provide greater detail.
The paper has four major sections. “Programming in ID” covers the basic high-level language use, including the use of I-structures and higher-order functions. Most of the paper focuses on “Dataflow Graphs as a Target for Computation.” This section includes material on tagged-tokens, firing rules, context changes, non-strict semantics, managers, I-structures, and a variety of other important implementation issues. The next section, “Dataflow Graphs as a Machine Language for TTDA,” gives a brief overview of how an architecture might be organized to execute the dataflow graphs. The last section gives a fairly detailed “Comparison with Other Work,” including a key section that highlights the Monsoon Machine. This version of the MIT architecture eliminates the need for the expensive associative memory included in previous designs.
My overall impression of this paper is very good. The content is substantial, particularly for readers unfamiliar with dataflow. The writing style and organization make it relatively easy to read. The only weak part of the paper is in the review of other work, and this is a timing issue. The paper was originally written in 1987, with a revision in early 1989. Hence, by the time of its publication in March 1990, far more progress had been made in many of the areas mentioned, including the authors’ own Monsoon Machine effort. This weakness notwithstanding, I do recommend this paper for people interested in parallel computing.