Carleton University
Technical Report TR-57
August 1984

Specialization, Generalization and Inheritance

Wilf R. LaLonde & John R. Pugh

Abstract

This paper describes our experience in teaching a course in abstract data types over a four year period. Although abstract data types are a major improvement over tradiĀ­tional data structures, they provide only a portion of the concepts needed by experienced designers. These additional concepts include such notions as generalizations of data types, their specializations, relationships between data types, and the capability and necessity of abstracting common operations through inheritance mechanisms. Designing an individual abstract data type is akin to “programming in the small” but designing a library of data types introduces new problems that are best solved from the viewpoint of “programming in the large”.

Download

TR-57.pdf