A Caltech Library Service

A Deterministic Notation for Cooperating Processes

Chandy, K. Mani and Foster, Ian (1993) A Deterministic Notation for Cooperating Processes. California Institute of Technology . (Unpublished)

See Usage Policy.

Other (Adobe PDF (1.2MB))
See Usage Policy.


Use this Persistent URL to link to this item:


This paper proposes extensions of sequential programming languages for parallel programming that have the following features: 1. Dynamic Structures The process structure is dynamic: Processes and variables can be created and deleted. 2.Paradigm Integration The programming notation allows shared memory and message passing. 3.Determinism Demonstrating that a program is deterministic -- all executions with the same input produce the same output -- is straightforward. A program can be written so that the compiler can verify that the program is deterministic. Nondeterministic constructs can be introduced in a sequence of refinement steps to obtain greater efficiency if required. The ideas have been incorporated in an extension of Fortran, but the underlying sequential imperative language is not central to the ideas described here.

Item Type:Report or Paper (Technical Report)
Group:Computer Science Technical Reports
Record Number:CaltechCSTR:1993.cs-tr-93-31
Persistent URL:
Usage Policy:You are granted permission for individual, educational, research and non-commercial reproduction, distribution, display and performance of this work in any format.
ID Code:26897
Deposited By: Imported from CaltechCSTR
Deposited On:19 Jul 2001
Last Modified:26 Dec 2012 14:09

Repository Staff Only: item control page