A computational model of everything
Nicholas Carriero, David Hillel Gelernter · Communications of the ACM · 2001
This article presents a computational model of everything. The world of computing can be divided into two separate, orthogonal components. Informally, the computer is one component and the asynchronous ensemble in which computers are embedded is the other. A multiprocessor is an asynchronous ensemble and so is a desktop computer system. The basic computer and devices are separate activities. The tuple space model has proven useful and efficient in practice. Many production applications use Scientific Computing Associates' Linda system. The model is structurally recursive, in the sense that a tuple space can be one field of a tuple. Tuples occupy tuple spaces, and tuple spaces can also occupy tuples. A program with information to communicate puts the information in a tuple and releases the tuple into tuple space. Tuple space is a model for coordination in general and in that sense a model for operating systems. But it is a bottom-up model that assumes nothing about the type of computing services that are ultimately supplied to the user