A semantics of multiple inheritance.
Proc. of the international symposium on Semantics of data types
Eiffel: the language
Object-oriented modeling and design
Object-oriented modeling and design
Getting class correctness and system correctness equivalent: how to get covariance right
TOOLS 8 Proceedings of the eighth international conference on Technology of object oriented languages and systems
Engineering a programming language: the type and class system of Sather
Proceedings of the international conference on Programming languages and system architectures
Object-oriented programming: a unified foundation
Object-oriented programming: a unified foundation
On formal requirements modeling languages: RML revisited
ICSE '94 Proceedings of the 16th international conference on Software engineering
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Reasoning in description logics
Principles of knowledge representation
Design of class hierarchies based on concept (Galois) lattices
Theory and Practice of Object Systems - Special issue high availability in CORBA
An Aristotelian understanding of object-oriented programming
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
On the syllogistic structure of object-oriented programming
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
An Operational Approach to the Semantics of Classes: Application to Type Checking
Programming and Computing Software
Multi-Methods in a Statically-Typed Programming Language
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Type-Safe Compilation of Covariant Specialization: A Practical Case
ECCOP '96 Proceedings of the 10th European Conference on Object-Oriented Programming
Simula Begin
Perfect hashing as an almost perfect subtype test
ACM Transactions on Programming Languages and Systems (TOPLAS)
Matchmaking for covariant hierarchies
Proceedings of the 8th workshop on Aspects, components, and patterns for infrastructure software
Metamodeling semantics of multiple inheritance
Science of Computer Programming
MASPEGHI 2004 mechanisms for specialization, generalization and inheritance
ECOOP'04 Proceedings of the 2004 international conference on Object-Oriented Technology
An inheritance system for structural & behavioral reuse in component-based software programming
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
APCCM '13 Proceedings of the Ninth Asia-Pacific Conference on Conceptual Modelling - Volume 143
Hi-index | 0.00 |
Class specialization is undoubtedly one of the most original and powerful features of object orientation as it structures object models at all stages of software development. Unfortunately, the semantics of specialization is not defined with the same accuracy in the various fields. In programming languages, specialization is constrained by type theory and by a type safe policy, whereas its common sense semantics dates back to the Aristotelian tradition. The well known covariant vs. contravariant controversy originates here. In this paper, we investigate how modeling and programming languages deal with this mismatch.We claim that type errors are part of the real world, so they should be taken into account at all stages of software development. Modeling as well as programming languages should adopt a covariant policy.