Synchronized Lazy Aggregates.
Draft of a technical memo based on my January 1994 MIT doctoral
dissertation. December 1, 1993.
We present a new solution to the problem of expressing single-pass,
space-efficient list and tree computations in a modular fashion.
synchronized lazy aggregates augment existing methods for expressing
programs as networks of operators acting on aggregate data, but
overcome many limitations. The technique is based on a dynamic model
of lock step processing that enables the operators in a network to
simulate the operational behavior of a monolithic loop or recursion.
The key to the technique is the synchron, a new first-class object
that allows concurrently executing operators to participate in a
barrier synchronization. We describe the design of synchronized lazy
aggregates and present examples of their implementation and use.