<?xml version="1.0" encoding="windows-1252"?>
<node id="180995" title="Re: RFC: Class::DispatchToAll" created="2002-07-11 07:07:28" updated="2005-02-14 23:30:36">
<type id="11">
note</type>
<author id="169744">
Abigail-II</author>
<data>
<field name="doctext">
It happens often in LPC. It's a language mostly used for
building MUDs. Often you will have a standard weapon
class and a standard wearable class. All weapons inherit
from the weapon class, while all wearables inherit from
the wearable class. But boxing gloves would inherit from
both.
&lt;p&gt;
Some problems LPC has with multiple inheritance aren't found
in Perl (for instance, the possibility of duplicating variables
when a class is inherited by two paths - different implementations
of LPC solve it differently). Other things are solved differently,
for instance, one flavour of LPC forbids inheriting from two
classes if they have methods with the same name - unless the
inheriting class defines a method with that same name.
&lt;p&gt;
There is nothing wrong with multiple inheritance. It's just
hard to implement is right, which is way some languages take
the easy way out and outright forbid it. Inheritance is already
a hard problem in Perl, but multiple inheritance is a real
nightmare. But that's the fault of Perl, not of multiple
inheritance.
&lt;p&gt;
Abigail</field>
<field name="root_node">
180852</field>
<field name="parent_node">
180954</field>
</data>
</node>
