A semantics of multiple inheritance.
Proc. of the international symposium on Semantics of data types
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Name collision in multiple classification hierarchies
on ECOOP '88 (European Conference on Object-Oriented Programming)
Strong typing of object-oriented languages revisited
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming 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
Strongtalk: typechecking Smalltalk in a production environment
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
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
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The Java programming language (2nd ed.)
The Java programming language (2nd ed.)
Abstract types have existential types
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A Theory of Objects
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Dynamically Composable Collaborations with Delegation Layers
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Implementing statically typed object-oriented programming languages
ACM Computing Surveys (CSUR)
Metamodeling semantics of multiple inheritance
Science of Computer Programming
Feature-Oriented programming with object algebras
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Hi-index | 0.00 |
Multiple inheritance and similar mechanisms are usually only supported at compile time in statically typed languages. Nevertheless, dynamic multiple inheritance would be very useful in the development of complex systems, because it allows the creation of many related classes without an explosion in the size and level of redundancy in the source code. In fact, dynamic multiple inheritance is already available. The language gbeta is statically typed and has supported run-time combination of classes and methods since 1997, by means of the combination operator '&'. However, with certain combinations of operands the '&' operator fails; as a result, dynamic creation of new classes and methods was considered a dangerous operation in all cases. This paper presents a large and useful category of combinations, and proves that combinations in this category will always succeed.