[Mono-list] Re: Is Objective-C support possible?

Martin Coxall coxall@cream.org
18 Feb 2002 13:30:03 +0000

> >>Whether you like it or not, ther is a "One True Way" here- the CLR way.
> >>It's not religion, it's the runtime you're working with. It has already
> >>been established that Multiple Inheritance was not allowed in the CLR
> >>because of the problems of diamond inheritance and over-complex
> >>instantiation rules, and also that mixin functionality can be achieved
> >>using the decorator pattern.
> For the last time... mix-ins do not have a constructor and therefore do not impact instantiation.

Makes no differency. Any mixin classes would still subclass
System.Object or one of its subclasses at the top of a diamond
inheritance pattern, meaning that the instantiation of any class that
uses mixins has multiple routes back up the tree to the "root"

Inheritance hierarchies should be strictly directed and acyclical. This
is why multiple inheritance is disallowed.