Re: Inheritance (Is this the consensus??)

Johannes N. Johannsen (jojo@well.com)
Mon, 14 Apr 1997 17:05:28 +1200

Stephan Diehl wrote:
> So we could drop the EXTENDS keyword,
> replace PROTO by CLASS and allow interfaces
> (IMPLEMENTS). An interface is defined like a PROTO,
> but does not have a body:
>
> INTERFACE Clock [ eventIn TimeSensor tick ].
> INTERFACE Mover [ eventIn SFFloat move ].
> INTERFACE Animator [ eventIn SFBoolean start ] EXTENDS Clock, Mover.
> INTERFACE Talker [ eventIn SFString talk ].
>
> CLASS MyRobot IMPLEMENTS Animator, Talker [ ... ]
> { Robot { ... }
> ...
> }
>
> What do you think of this solution, I think it's intuitive,
> easy to implement and very effective.
>
I like this, it is simple, and gets rid of multiple inheritance
complexities, and compatible with VRML 2.0 PROTO implicit base type
convention.

However, I've been following the discussion some, and I'm a bit confused
about if there is something additional being proposed besides the
above. I don't understand the SELF stuff, I just don't get it. Is this
being proposed for something? Or is it being replaced somehow by the
above proposal? If it is being proposed for something, could someone
explain it to me (I've read the posts and I'm still not getting it).

Thanks

JJ