A Unifying Theory of True Concurrency Based on CSP and Lazy Observation
Marc L. Smith · Communicating Process Architectures · 2005
What if the CSP observer were lazy? This paper considers the consequences of altering the behavior of the CSP observer. Specifically, w hat implications would this new behavior have on CSP's traces? Laziness turns out to be a useful metaphor. We show how laziness permits transforming CSP into a model of true concurrency (i.e., non-interleaved trace semantics). Furthermore, th e notion of a lazy observer sup- ports tenets of view-centric reasoning (VCR): parallel events (i.e., true concurrency), multiple observers (i.e., different views), and the possib ility of imperfect observation. We know from the study of programming languages that laziness is not necessarily a negative quality; it provides the possibility of greater e xpression and power in the programs we write. Similarly, within the context of the Unifying Theories of Program- ming, a model of true concurrency — VCR — becomes possible by permitting (even encouraging) the CSP observer to be lazy.