Distributed Eiffel: a language for programming multi-granular distributed objects on the Clouds operating system
- 2 January 2003
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 331-340
- https://doi.org/10.1109/iccl.1992.185497
Abstract
The design and implementation of Distributed Eiffel, a language designed and implemented for distributed programming, on top of the Clouds operating system by extending the object-oriented language Eiffel are discussed. The language presents a programming paradigm based on objects of multiple granularity. While large-grained persistent objects serve as units of distribution, fine-grained objects are used to describe and manipulate entities within these units. The language design makes it possible to implement both shared-memory and message-passing models of parallel programming within a single programming paradigm. The language provides features with which the programmer can declaratively fine-tune synchronization at any desired object granularity and maximize concurrency. With the primitives provided, it is possible to combine and control both data migration and computation migration effectively, at the language level. The design addresses such issues as parameter passing, asynchronous invocations and result claiming, and concurrency control.Keywords
This publication has 8 references indexed in Scilit:
- Linking consistency with object/thread semantics: an approach to robust computationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- OrcaACM SIGPLAN Notices, 1990
- Memory coherence in shared virtual memory systemsACM Transactions on Computer Systems, 1989
- Inheritance of synchronization and recovery properties in Avalon/C++Computer, 1988
- Promises: linguistic support for efficient asynchronous procedure calls in distributed systemsPublished by Association for Computing Machinery (ACM) ,1988
- Distrbution and Abstract Types in EmeraldIEEE Transactions on Software Engineering, 1987
- Implementing remote procedure callsACM Transactions on Computer Systems, 1984
- Guardians and Actions: Linguistic Support for Robust, Distributed ProgramsACM Transactions on Programming Languages and Systems, 1983