Search code examples
multithreadingmethodshistorydijkstramultiprocess

What is the "Steam Method" Dijkstra refers to in "Structure of 'THE'-Multiprogramming System"?


Does anyone know what the "Steam Method" is that Dijkstra refers to in "Structure of 'The'-Multiprogramming System"? This paper is very old (from 1968), but lays down some of the ground work for much of modern day programming. Here is the context it appears in below:

The construction stage has been rather traditional, perhaps even old-fashioned, that is, plain machine code. Reprogramming on account of a change of specifications has been rare, a circumstance that must have contributed greatly to the feasibility of the "steam method." That the first two stages took more time than planned was somewhat compensated by a delay in the delivery of the machine.

Note: I am suspecting that this may be a typo, and it could refer to the "stream method". If it is the stream method, I would like to see what this method is, and if it fits in the context here.


Solution

  • In reading through the paper, it appears to be a self-referencing summation.

    Take for instance, page 341 where the goal is stated:

    The primary goal of the system is to process smoothly a continuous flow of user programs as a service to the University.

    And then in further describing the system on page 343:

    Therefore we have arranged the whole system as a society of sequential processes, progressing with undefined speed ratios.

    And within that same paragraph, two other items are quoted in an effort to name a particular item of the system.

    Now, if we jump back to page 342, the system is described as uni-directional:

    There is no common data base via which independent users can communicate with each other: they only share the configuration and a procedure library.

    So both in his manner of speaking and description of The Multiprogramming System being developed at the time, the system being deployed can reasonably be seen as being described as using the "steam method" conceptually created by the 6 mathematicians working on the project.

    NOTE: Citations and page numbers are taken from the paper here