Garrett Goebel wrote:

> > So every class has a vtable, which is a copy of its parents except for
> > what is overridden within it, and a instance that wishes to
> > deviate could make a local copy of its vtable and twiddle it.
 
> Why not just fall back to the ancestor(s) unless it provides its own. What
> good does flattening an instance accomplish that polymorphism doesn't?

Dan S. says "Vtables are much lower level than this" but, what if they are
used for method dispatch, the way C++ virtual methods work, on all objects,
not just builtins?  I thought that was the whole point of them. It is an
internals issue though and anyone without a running system should shut up
(which is, everyone but Simon Cozens at this point.) 

To respond to GG's question, it is a considered memory vs. speed tradeoff.
The question is, is making the copy better than having an override list 
which is consulted before the dispatch.  Which is an internals question
too.

Language list is for determining what the programmer interface looks like.

Reply via email to