Eiffel**: An Implementation of Eiffel on Amadeus, a Persistent, Distributed Applications Support Environment.
Colm McHugh, Vinny Cahill · 1993
Eiffel** is an implementation of Eiffel which provides support for distribution, persistence, 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.