Abstract
The design space of object-based languages is characterized in terms of objects, classes, inheritance, data abstraction, strong typing, concurrency, and persistence. Language classes (paradigms) associated with interesting subsets of these features are identified and language design issues for selected paradigms are examined. Orthogonal dimensions that span the object-oriented design space are related to non-orthogonal features of real languages. The self-referential application of object-oriented methodology to the development of object-based language paradigms is demonstrated.
Delegation is defined as a generalization of inheritance and design alternatives such as non-strict, multiple, and abstract inheritance are considered. Actors and prototypes are presented as examples of classless (delegation based) languages. Processes are classified by their degree of internal concurrency. The potential inconsistency of object-oriented sharing and distributed autonomy is discussed, suggesting that compromises between sharing and autonomy will be necessary in designing strongly typed object-oriented distributed database languages.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference28 articles.
1. Agha G. Actors A Model of Concurrent Computation in Distributed Systems MIT Press 1986.]] Agha G. Actors A Model of Concurrent Computation in Distributed Systems MIT Press 1986.]]
2. Concurrency Control in Distributed Database Systems
3. Cook William Self-Referential Models of Inheritance Brown University Report March 1987.]] Cook William Self-Referential Models of Inheritance Brown University Report March 1987.]]
4. Ada Reference Manual US Dept of Defense july 1980.]] Ada Reference Manual US Dept of Defense july 1980.]]
Cited by
54 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献