Classification of actions or inheritance also for methods
European conference on object-oriented programming on ECOOP '87
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
A programmer's guide to object-oriented programming in Common LISP
A programmer's guide to object-oriented programming in Common LISP
An implementation of the object-oriented concurrent programming language SINA
Software—Practice & Experience
Virtual classes: a powerful mechanism in object-oriented programming
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
ML for the working programmer
Action semantics
Monotonic conflict resolution mechanisms for inheritance
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Programming with Standard ML
Subject-oriented programming: a critique of pure objects
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Proposal for a monotonic multiple inheritance linearization
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
Agora: message passing as a foundation for exploring OO language concepts
ACM SIGPLAN Notices
Object-oriented programming in the BETA programming language
Object-oriented programming in the BETA programming language
A monotonic superclass linearization for Dylan
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Dylan reference manual: the definitive guide to the new object-oriented dynamic language
The Dylan reference manual: the definitive guide to the new object-oriented dynamic language
A Theory of Objects
Smalltalk-80: The Language
Object-Oriented Multi-Methods in Cecil
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
A Marriage of Class- and Object-Based inheritance Without Unwanted Children
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Generalising the BETA Type System
ECCOP '96 Proceedings of the 10th European Conference on Object-Oriented Programming
Abstracting Object Interactions Using Composition Filters
ECOOP '93 Proceedings of the Workshop on Object-Based Distributed Programming
The when, why and why not of the BETA programming language
Proceedings of the third ACM SIGPLAN conference on History of programming languages
On flexible dynamic trait replacement for Java-like languages
Science of Computer Programming
Hi-index | 0.00 |
There is a long-standing schism in object-orientation between the safe but rigid statically typed languages, and the flexible but less safe dynamically typed languages. This paper presents an enhancement of the flexibility and expressive power of a statically typed language, based on an inheritance mechanism which allows both compile-time and run-time construction of classes, as well as dynamic specialization of objects. This enhanced flexibility supports better separation of concerns in large systems and allows for more elegant and maintainable designs. Submethoding-inheritance applied to behavioral descriptors--has been used for the construction of control structures for many years, in BETA. With dynamic inheritance, submethoding becomes more expressive, supporting control structures as first class values which may be constructed and combined dynamically. Even though the concept of submethoding is missing from most other languages, the basic idea could be applied to any statically typed object-oriented language.