Avalon/C++ is a programming language that supports the construction of reliable programs consisting of a set of servers communicating over a network. It provides high-level language support for user-defined data types with customized synchronization and fault-tolerance properties. These data types are encapsulated in servers, and accessed through exported server operations. Avalon/C++ greatly simplifies the programming of these servers by hiding the distributed nature of a server from both the implementor and callers of a server. Avalon/C++ exploits the similarity of servers and classes, making server definition and use look like that for C++ classes. A detailed description is given of a typical Avalon/C++ server, the catalog server, which is used by clients to locate servers.
['Richard A. Lerner']
Reliable servers: design and implementation in avalon/C++