Title of article :
Composing atomic features
Author/Authors :
Patrick Eugster، نويسنده , , Sebastien Vaucouleur، نويسنده ,
Issue Information :
دوهفته نامه با شماره پیاپی سال 2006
Pages :
17
From page :
130
To page :
146
Abstract :
SCOOP (Simple Concurrent Object-Oriented Programming) is a model of concurrency that builds on the concept of contracts for synchronizing accesses to objects. This model is based on a pessimistic concurrency control scheme whose reservation semantics avoids race conditions altogether — alas at the expense of parallelism. In this paper we propose to extend the initial SCOOP model by adding transactional semantics, aspiring to an increase of performance but also reliability of distributed object-oriented programs executing in the presence of partial failures. Our solution consists in programming language support for the specification of atomicity properties of particular features (routines or attributes). With such support, the application programmer is assisted by the compiler in composing atomic features, which substantially alleviates the task of constructing reliable distributed software. We investigate the impact of concepts such as nesting, inheritance, polymorphism, and contracts in such a statically typed approach, illustrated in the context of the Eiffel programming language. In particular, we depict how our solution enables the composition of atomic features from not only elementary atomic features (such as updates applied to variables which can be rolled back — backward recovery) but also from non-atomic ones by making use of compensation mechanisms (forward recovery).
Keywords :
Concurrency , Objects , Compensation , Transactions , SCOOP
Journal title :
Science of Computer Programming
Serial Year :
2006
Journal title :
Science of Computer Programming
Record number :
1079899
Link To Document :
بازگشت