CMU-CS-98-130
Computer Science Department
School of Computer Science, Carnegie Mellon University



CMU-CS-98-130

Respectful Type Converters

Jeannette M. Wing, John Ockerbloom

May 1998

[Submitted to IEEE Transactions on Software Engineering]

CMU-CS-98-130.ps


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 -> 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.

Keywords: Type converters, object repository, distributed objects, subtype, object-oriented design, abstraction function, specifications, semantics, Larch, type evolution, interoperability


23 pages


Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by reports@cs.cmu.edu