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 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,d85ddda7d974176,start X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news4.google.com!news2.volia.net!news.germany.com!news.belwue.de!newsfeed.arcor.de!newsspool2.arcor-online.net!news.arcor.de.POSTED!not-for-mail Newsgroups: comp.lang.ada Subject: MI Hownotto by Betrand Meyer From: Georg Bauhaus Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: # Message-ID: <1162043687.5674.10.camel@localhost.localdomain> Mime-Version: 1.0 X-Mailer: Evolution 2.6.1 Date: Sat, 28 Oct 2006 15:54:48 +0200 NNTP-Posting-Date: 28 Oct 2006 15:52:32 CEST NNTP-Posting-Host: 7cad92f3.newsspool2.arcor-online.net X-Trace: DXC=mke;I5mEk>4RadXUBHgFh3A9EHlD;3Yc24Fo<]lROoR1Fl8W>\BH3Y2eYoBXB6NZO:A:ho7QcPOV3YUBTT_jN1@0:aQVO5ff:l9 X-Complaints-To: usenet-abuse@arcor.de Xref: g2news2.google.com comp.lang.ada:7243 Date: 2006-10-28T15:52:32+02:00 List-Id: This week's EiffelWorld column by Bertrand Meyer has a note about construction procedures and multiple inheritance. I thought it might be interesting given a recent discussion in c.l.ada. In particular, multiple inheritance just doesn't go well with the C++ idea, also retained in Java and C#, that a constructor (creation procedure) must start its execution by calling the constructor of its parent. As soon as you require this you are ruling out multiple inheritance, since with two parents or more there's no good reason for executing a particular parent's constructor before the others'; and the situation becomes even more hazy when these parents have a common ancestor -- repeated inheritance, the so called "diamond" structure. Hence complicated rules that probably about twelve people in the world understand, and fewer remember.