SCOOP : Concurrent Programming Made Easy

The SCOOP model (Simple Concurrent Object-Oriented Programming) provides a simple yet very powerful mechanism for parallel computation. The model takes advantage of the inherent concurrency implicit in object-oriented programming to provide programmers with a simple extension enabling them to produce parallel applications with little more effort than sequential ones. SCOOP is applicable to many different physical setups, from multiprocessing to multithreading, highly parallel processors for scientific computation, distributed computation, and Web services. In this article, we present the basic concepts of the model and show how easily parallel and distributed computation can be achieved in a way that preserves the full power of all object-oriented techniques. Several programming examples illustrate the discussion.

[1]  G. Agha Concurrent object-oriented programming , 1990, CACM.

[2]  Michael Philippsen,et al.  A survey of concurrent object-oriented languages , 2000, Concurr. Pract. Exp..

[3]  Louis H. Turcotte,et al.  A Survey of Software Environments for Exploiting Networked Computing Resources , 1993 .

[4]  Denis Caromel,et al.  Toward a method of object-oriented concurrent programming , 1993, CACM.

[5]  Satoshi Matsuoka,et al.  Analysis of inheritance anomaly in object-oriented concurrent programming languages , 1993 .

[6]  Oscar Nierstrasz,et al.  A Tour of Hybrid A Language for Programming with Active Objects , 1992 .

[7]  Sacha Krakowiak,et al.  Architecture and Implementation of Guide, an Object-Oriented Distributed System , 1991, Comput. Syst..

[8]  Marc Shapiro,et al.  Persistence and Migration for C++ Objects , 1989, ECOOP.

[9]  Krishna M. Kavi,et al.  Parallelism in object-oriented languages: a survey , 1992, IEEE Software.

[10]  Bertrand Meyer,et al.  Object-Oriented Software Construction, 2nd Edition , 1997 .

[11]  Jennifer Widom,et al.  Database Systems: The Complete Book , 2001 .

[12]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[13]  Bertrand Meyer,et al.  Systematic concurrent object-oriented programming , 1993, CACM.

[14]  Michael Papathomas,et al.  Language Design Rationale and Semantic Framework for Concurrent Object-Oriented Programming , 1992 .

[15]  Mark Nuttall,et al.  A brief survey of systems providing process or object migration facilities , 1994, OPSR.

[16]  Jean-Marc Jézéquel Object-Oriented Software Engineering with Eiffel , 1996, Addison-Wesley Eiffel in practice series.

[17]  Mario Tokoro,et al.  Object-oriented concurrent programming , 1987 .