A semantics of multiple inheritance
Information and Computation - Semantics of Data Types
Keynote address - data abstraction and hierarchy
OOPSLA '87 Addendum to the proceedings on Object-oriented programming systems, languages and applications (Addendum)
An overview of LP, the larch power
RTA-89 Proceedings of the 3rd international conference on Rewriting Techniques and Applications
Larch: languages and tools for formal specification
Larch: languages and tools for formal specification
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Respectful type converters for mutable types
Foundations of component-based systems
Type Evolution and Instance Adaptation
Type Evolution and Instance Adaptation
Signature and specification matching
Signature and specification matching
A semi-automated digital preservation system based on semantic web services
Proceedings of the 4th ACM/IEEE-CS joint conference on Digital libraries
Preservation-centric and constraint-based migration of digital documents
Proceedings of the 2006 ACM symposium on Document engineering
Answering conceptual queries with Ferret
Proceedings of the 30th international conference on Software engineering
ACM Transactions on Computer-Human Interaction (TOCHI)
Proceedings of the 13th ACM/IEEE-CS joint conference on Digital libraries
Hi-index | 0.00 |
In converting an object of one type to another, we expect some of the original object's behavior to remain the same and some to change. How can we state the relationship between the original object and converted object to characterize what information is preserved and what is lost after the conversion takes place? We answer this question by introducing the new relation, respects, and say that a type converter function $C: A \rightarrow B$respects a type $T$. We formally define respects in terms of the Liskov and Wing behavioral notion of subtyping; types $A$ and $B$ are subtypes of $T$. We explain in detail the applicability of respectful type converters in the context of the Typed Object Model (TOM) Conversion Service, built at Carnegie Mellon and used on a daily basis throughout the world. We also briefly discuss how our respects relation addresses a similar question in two other contexts: type evolution and interoperability.