<?xml version="1.0" encoding="windows-1252"?>
<node id="180954" title="Re: Re: •Re: RFC: Class::DispatchToAll" created="2002-07-11 02:03:39" updated="2004-08-21 19:19:02">
<type id="11">
note</type>
<author id="22308">
dws</author>
<data>
<field name="doctext">
&lt;i&gt;The problem this solves is very real-world. Consider a Perl class hierarchy in which a class Child inherits from classes Mother and Father:&lt;/i&gt;
&lt;p&gt;
Uh, oh. Multiple Inheritance.
&lt;p&gt;
A couple of years of doing Smalltalk (which didn't have multiple inheritance, but which let you fake interface interitance via mixins), and a couple of years of Java and C++ have lead me to believe that Multiple Inheritance is a &lt;b&gt;V&lt;/b&gt;ery &lt;b&gt;R&lt;/b&gt;isky &lt;b&gt;T&lt;/b&gt;hing, and that it can always be worked around by either composition or reducing to inheriting from one data-bearing class and multiple (data-less) interface classes. Doing so avoids the multiple destructor problem.
&lt;p&gt;
Perhaps you've run into a situation where multiple inheritance is the right thing to do. If so, I'd like to hear about it.
&lt;p&gt;


</field>
<field name="root_node">
180852</field>
<field name="parent_node">
180937</field>
</data>
</node>
