Respectful Type Converters
Abstract
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 right arrow 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.
Document Details
- Document Type
- Technical Report
- Publication Date
- May 01, 1998
- Accession Number
- ADA345874
Entities
People
- Jeannette Wing
- John Ockerbloom
Organizations
- Carnegie Mellon University