SCOOP (software)
From Wikipedia, the free encyclopedia
SCOOP stands for Simple Concurrent Object Oriented Programming. It is a concurrency model designed for the Eiffel programming language, conceived by Eiffel's creator & designer, Bertrand Meyer.
SCOOP defines a way for an object oriented program to be written without the concept of threads, locks, or other typical multiprogramming methods. This allows the compiler or runtime environment to optimize the amount of concurrency as well as eliminate typical design flaws such as deadlock.
The model was first designed in the early 1990s and published in 1993 in the Communications of the ACM[1] An updated version was described in chapter 30 of the book Object-Oriented Software Construction.[2] A prototype implementation was developed in 1995 by Eiffel Software. An article by Compton and Walker[3] provides an overview of SCOOP and describes another early implementation. Nienaltowski, Arslan and Meyer have published a description of the model as of 2003.[4] Work on SCOOP is proceeding at the Chair of Software Engineering at ETH Zurich, which makes available an implementation for download.[5]
[edit] References
- ^ Bertrand Meyer: Systematic Concurrent Object-Oriented Programming, in Communications of the ACM, 36, 9, September 1993, pp. 56-80, also available online.
- ^ Bertrand Meyer: Object-Oriented Software Construction, 2nd edition, Prentice Hall, 1997
- ^ Michael Compton, CSIRO Mathematical and Information Sciences and Richard Walker, The Australian National University (2002). "A Run-time System for SCOOP". Journal of Object Technology 1: 119–157. Chair of Software Engineering, Swiss Federal Institute of Technology. ISSN 1660-1769.
- ^ P. Nienaltowski, V. Arslan and B. Meyer: Concurrent object-oriented programming on .NET, in IEE Proceedings on Software, vol. 150, no. 5, October 2003, pages 308-314, also available online
- ^ ETH Zurich, Chair of Software Engineering: SCOOP demos and downloads