From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,4873305131bf4d94 X-Google-Attributes: gid103376,public X-Google-Thread: 109fba,4873305131bf4d94 X-Google-Attributes: gid109fba,public X-Google-Thread: 1014db,4873305131bf4d94 X-Google-Attributes: gid1014db,public From: Mark Wilden Subject: Re: ADA and Pascal work, C,C++, and Java are the only lheadaches you need!! Date: 1997/11/08 Message-ID: <3464B34F.37D8@mWilden.com>#1/1 X-Deja-AN: 288030425 References: <34557f2b.1934172@news.mindspring.com> <34566fe9.447229@news.mindspring.com> <345673af.1413708@news.mindspring.com> <3456b9f3.0@news.eznet.net> <3456e71b.3833189@news.mindspring.com> <34591365.7E53@gsg.eds.com> <3462889F.625B4D36@flash.net> <346499D7.CCBB53DD@flash.net> Organization: The Mark Wilden Company Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++ Date: 1997-11-08T00:00:00+00:00 List-Id: Charles R. Lyttle wrote: > > Ada used objects to collect code and data into a single component. It did not > support inheritance. The OO purist insisted that you could not call a language > Object Oriented unless it supported all the latest features of every individual > theory of what constituted OO. Inheritance is hardly a late-breaking feature. Far from being part of any "individual theory," inheritance is part of every definition of OOP I've read in the standard texts. > No two theorist seemed to agree as to what OO meant, That may be true, but they do agree it includes inheritance. > With multiple inheritance, for example, a change in a line of code can propagate > side effects through out a system. Because of the complex cross connections that > exist with multiple inheritance, it is can be nearly impossible to maintain a > system over time. Fixing a bug in one class by modifying an ancestor class can > induce new bugs in decedent classes way out in left field. This has nothing to do with multiple inheritance. It's a feature of inheritance in general. The converse is also true: fixing a bug in an ancestor class fixes bugs in all descendants. I guess the question to ask oneself before using inheritance is "Do I create more bugs than I fix?". :)