At 07:46 AM 9/2/2001 +0100, Piers Cawley wrote:
>Dan Sugalski <[EMAIL PROTECTED]> writes:
> > Nope, the cost will be paid on all sub calls. We at least need to
> > check on every sub call to see if there are multiple versions of the
> > functions. (We can't tell at compile time if it's a single or
> > multi-method sub call, since it can change at runtime) Granted, it's
> > not a huge expense for non-multi-method calls, but it does still
> > impose an overhead everywhere.
>
>Can't you do it with a scary polymorphic function object? (Handwaving
>starts which could be *completely* off base.) Then you just have to
>rely on the 'call_this_function' vtable method to DTRT, which, unless
>it's a 'multi' function, will simply do what function calls have
>always done. You only have to do the more complex stuff if the
>function object is a 'multi' function, in which case it'll have a
>different handler in the vtable.
Why yes, yes in fact we could. In fact, I think we will. (And thank you
very much :)
Yet another change to the assembly PDD coming up...
Dan
--------------------------------------"it's like this"-------------------
Dan Sugalski even samurai
[EMAIL PROTECTED] have teddy bears and even
teddy bears get drunk