rigorous, and abstract— clearly defined and generally agreed—type inheritance model. To quote an article by Taivalsaari: “The basic idea of inheritance is quite simple ... [and yet, despite] its central role in current object systems, inheritance is still quite a controversial mechanism ... [a] comprehensive view of inheritance is still missing” [8]. Here are some more quotes illustrating the same general point: • “[There] are at least four types of inheritance: substitution inheritance, inclusion inheritance, constraint inheritance, and specialization inheritance ... Various degrees of these four types of inheritance are provided by existing systems and prototypes, and we do not prescribe a specific style of inheritance” [1]. • “[Inheritance can be] based on [a variety of] different criteria and there is no commonly accepted standard definition.” This book proceeds to give eight possible interpretations [3] (refererence [7] gives 12). • “[A] programming languag...
C. J. Date, Hugh Darwen