“…In most object-oriented approaches, synchronization of requests for operations on an object's data is performed within the object itself rather than by a centralized arbiter. Much work has been and is being done on the specification of modular objects and on synchronization and communication in parallel programs [Allchin and McKendry 1983, Ambler et al 1977, Andrews 1981, Arvind et al 1977, Atkinson and Hewitt 1977, van den Bos et al 1981, Brinch Hansen 1978, BYTE 1981, Campbell and Habermann 1974, Campbell and Kolstad 1980a, Comte et al 1978, Cook 1980, Dennis 1977, Dijkstra 1975, Feldman 1979, Gentleman 1981, Hewitt and Atkinson 1979, Hoare 1978, Jayaraman and Keller 1982, Kahn et al 1981, Kessels 1981, Lauer et al 1980, Liskov 1979, Liskov and Scheifler 1983, Mao and Yeh 1980, Oldehoeft and Jennings 1984, Ramamritham and Keller 1980, Reed and Kanodia 1979, Robert and Verjus 1977, Silberschatz 1979, Welsh and Lister 1981] .…”