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.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,1116ece181be1aea X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-09-13 18:38:48 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!elnk-nf2-pas!elnk-pas-nf1!newsfeed.earthlink.net!west.cox.net!east.cox.net!peer01.cox.net!cox.net!cyclone1.gnilink.net!spamkiller2.gnilink.net!nwrdny02.gnilink.net.POSTED!53ab2750!not-for-mail From: Hyman Rosen User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5b) Gecko/20030901 Thunderbird/0.2 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Is the Writing on the Wall for Ada? References: <3F615341.4000100@attbi.com> <568ede3c.0309121211.743a8da2@posting.google.com> <3F634E58.4080803@attbi.com> In-Reply-To: <3F634E58.4080803@attbi.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: Date: Sun, 14 Sep 2003 01:38:47 GMT NNTP-Posting-Host: 162.84.176.54 X-Complaints-To: abuse@verizon.net X-Trace: nwrdny02.gnilink.net 1063503527 162.84.176.54 (Sat, 13 Sep 2003 21:38:47 EDT) NNTP-Posting-Date: Sat, 13 Sep 2003 21:38:47 EDT Xref: archiver1.google.com comp.lang.ada:42463 Date: 2003-09-14T01:38:47+00:00 List-Id: Robert I. Eachus wrote: > You inherit from two virtual classes, then use concrete mix-ins to > implement the classes. I still feel like we're talking past each other. I am showing you why one might want to inherit from two different concrete classes. In my example, you want an object which is Colorable and Resizable, and you want to reuse the concrete implementations of the adapter classes. Are you saying that this example is somehow invalid? You can't do it in Ada, so you have to use the mixin style if you want something like this, but that's just a deficiency of Ada. You can use the mixin style in C++ too, of course, but if you have constructors the mixin style forces you to pass the constructor parameters around somewhat inconveniently; it's easier to do the direct multiple inheritance. Notice that your mixin example didn't have the initializing parameters that my C++ example did.