[Mono-list] Re: Is Objective-C support possible?
Ian MacLean
ianm@ActiveState.com
Mon, 18 Feb 2002 12:48:47 -0800
Martin Coxall wrote:
>
>
>In any case, and once again, this is a decision that has been made for
>you. The CLR doesn't support multiple inheritance. It's out of your
>hands, live with it. Most OO purists dislike multiple inheritance. The
>design of the CLR reflects this.
>
Just to clarify. The CLR does NOT dissallow multiple inheritance. It
just doesn't provide explicit support for it. There is a big difference.
Eiffell for .Net has multiple inheritance. John Gough's book "Compiling
for the CLR" has a section on implementing MI on top of the CLR. to quote
"The CLR does not provide facilities for the direct implementation of
multiple inheritance. In particular, the CLR mechanisms for virtual
method dispatch and object layout are inherently tied to an execution
model with single inheritance and multiple interfaces. Nevertheless, as
the Microsoft managed c++ compiler shows, it is possible to implement MI
all the same. The fundamental idea behind such an implementation is to
ignore the CLR facilities for method dispatch and instead layout the
v-table explicitly" he then goes on to discuss several possible ways of
implementing this.
Ian