Family Values; A Semantic Notion of Subtyping,

Abstract

The use of hierarchy is an important component of object-oriented design. Hierarchy allows the use of type families, in which higher level supertypes capture the behavior that all of their subtypes have in common. For this methodology to be effective, it is necessary to have a clear understanding of how subtypes and supertypes are related. This paper takes the position that the relationship should ensure that any property proved about supertype objects also holds for its subtype objects. It presents two ways of defining the subtype relation, each of which meets this criterion, and each of which is easy for programmers to use. The paper also discusses the ramifications of this notion on the design of types families and on the contents of type specifications and presents a notation for specifying types formally.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 17, 1992
Accession Number
ADA259881

Entities

People

  • Barbara Liskov
  • Jeannette Wing

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Ground and Sea Platforms

DTIC Thesaurus Topics

  • Abstracts
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Covariance
  • Elephants
  • Environment
  • Equations
  • Formal Languages
  • Language
  • Object Oriented Programming
  • Object-Oriented Programming Language
  • Programming Languages
  • Simulations
  • Specifications
  • Standards

Readers

  • Database Systems and Applications
  • Theoretical Analysis.