Structural subtyping in a distributed object system
Patrick A. Muckelbauer, Vincent F. Russo · 1996
Object-oriented techniques increase program modularity, decrease coupling, and improve data abstraction by supporting encapsulation through narrow, rigidly defined and strongly enforced interfaces to objects. Applying object-oriented techniques to address problems of building scalable and maintainable distributed systems seems an obvious approach since reducing coupling and increasing modularity are of obvious benefit. Unfortunately, object-oriented interfaces and mechanisms are usually only accessible and enforced through programming language mechanisms and support. This severely limits the degree to which disjoint, unrelated components can interact in a multilingual, loosely coupled distributed system. An accepted solution to the language dependence problem is the use of high-level interface description languages (IDLs) to provide a description mechanism for an object's interface that is independent of any programming language. Implementations of these interfaces can be provided by a...