The work spawns new opportunities for collaboration with researchers at Indiana investigating parallel symbolic processing. Finally, the proposed funding would enable a new generation of students to train for an experimental effort that has been ongoing since 1979. Description of the research The DSI programming system is a model of concurrent demand-oriented processing in which the only synchronizing mechanism is a suspending constructor. Newly allocated data cells are initialized with transparent computations for computing their fields. Field access is blocked until these suspensions compute and replace themselves with concrete values.
Suspensions are ultra-lightweight tasks.
The DSI system is a vehicle for experimenting with various approaches to concurrent symbolic computation, including output-driven parallelism, demand propagation, delayed list ordering, and speculative scheduling. In twenty years of exploring these aspects, we have also developed general perspectives on architecture and resource management for parallel heap memories. Our motive is not to promote a particular computation model, but to contribute to the evolution of general purpose computers toward better symbolic processing capabilities. This architecture represents the coming generation of general-purpose work stations. We also believe that symbolic processing will prevail on these machines, owing to the heterogeneity of network computing, hence, the need to coordinate disparate local and remote tasks.