1986/01/01 by Bertrand Meyer · 1 citation
Computer Science · #Software Engineering Research #Inheritance (genetic algorithm) #Computer science #Biology #Genetics #Gene
paper · doi:10.1145/28697.28738
openalex publication_date 1986/01/01 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/29
Genericity, as in Ada or ML, and inheritance, as in object-oriented languages, are two alternative techniques for ensuring better extendibility, reusability, and compatibility of software components.This article is a comparative analysis of these two methods.It studies their similarities and differences and assesses to what extent each may be simulated in a language offering only the other.It shows what features are needed to successfully combine the two approaches in an object-oriented language that also features strong type checking.The discussion introduces the principal aspects of the language EiffePM whose design, resulting in part from this study, includes multiple inheritance and a limited form of genericity under full static typing. OVERVIEWDespite its name, today's software is usually not soft enough: adapting it to new uses turns out in most cases to be a harder endeavor than should be.It is thus essential to find ways of enhancing such software quality factors as extendibility (the ease