TCD-CS-93-36... McHugh, C. & Cahill, V..

Eiffel**: An Implementation of Eiffel on Amadeus, a Persistent, Distributed Applications Support Environment


Colm McHugh and Vinny Cahill
Distributed Systems Group, Dept. of Computer Science, Trinity College, Dublin 2, Ireland.
email: {dcmchugh,vjcahill}@cs.tcd.ie

April 19,1993

Abstract

Eiffel** is an implementation of Eiffel which provides support for distribution, persistent, concurrency and transactions. All objects in an Eiffel** system are global (i.e. accessible from nodes other than that at which they are currently located) and persistent (i.e. their lifetimes are not bounded by the duration of the program that created them). Some objects may also be atomic (i.e. accesses to these objects within atomic transactions provide the well-known transactional properties of atomicity, consistency, isolation and durability in the face of concurrent execution and partial failures). Eiffel** is supported by the Amadeus distributed application support platform. In this paper we describe the Eiffel** language and its implementation on Amadeus. We believe that the combination of the Eiffel programming model and the support provided by the Amadeus platform provide a useful environment for the construction of sophisticated distributed applications.


Technical Reports Home Page