Simple Concurrent Object-Oriented Programming


The paper describes the approach to concurrency that is now known as SCOOP for Simple Concurrent Object-Oriented Programming. It introduces us to the only notational extensions supporting concurrency. Using the separate declaration form in Eiffel to show that object may become attached to objects handled by different processor. The use of separate declarations to cover the fundamental Boolean property -- is this object here, or is it elsewhere? -- while leaving room for various physical implementations of concurrency suggests a two-level architecture, similar to what is available for the graphical mechanisms.


Bertrand Meyer. Chapter Concurrency, Distribution, Client - Server and Internet of Object-Oriented Software Construction. 1997.

Additional reading material

Bertrand Meyer. Object-Oriented Software Construction. 1997.

Implementation details

Examples comparing regular approaches to concurrency in C++ and Java in implementation of typical concurrency problems (Dining philosophers, Barbers shop etc.) and SCOOP approach using separate declarations in Eiffel.