Paper Details

Communicating Process Architectures (CPA)
 Title: The SCOOP Concurrency Model in Java-like Languages
 Conference: Communicating Process Architectures 2009
 Authors: Faraz Torshizia, Jonathan S. Ostroffb, Richard F. Paigec, Marsha Chechika
(a) Department of Computer Science, University of Toronto
(b) Department of Computer Science and Engineering, York University
(c) Department of Computer Science, University of York
 Abstract: SCOOP is a minimal extension to the sequential object-oriented programming model for concurrency. The extension consists of one keyword (separate) that avoids explicit thread declarations, synchronized blocks, explicit waits, and eliminates data races and atomicity violations by construction, through a set of compiler rules. SCOOP was originally described for the Eiffel programming language. This paper makes two contributions. Firstly, it presents a design pattern for SCOOP, which makes it feasible to transfer SCOOP's concepts to different object-oriented programming languages. Secondly, it demonstrates the generality of the SCOOP model by presenting an implementation of the SCOOP design pattern for Java. Additionally, we describe tools that support the SCOOP design pattern, and give a concrete example of its use in Java. 

BibTeX Entry

Full paper