Dan Sugalski <[EMAIL PROTECTED]> wrote:
We toss the keyed variants for everything but get and set. And... we move *all* the operator functions out of the vtable and into the MMD system. All of it. Math, logical ops, bit ops... the works. All that's left are the gets, sets, and meta-information entries. (Type, class, elements, and suchlike stuff) We rework the current pmc processor to take the entries that are getting tossed and automatically add them to the MMD tables on PMC load instead.
Sounds good. C<add_p_p_p> and friends isn't really fast now due to some type checks. And that's only for Perl types. Would be much more for multiple HLL. Putting in specialized MMD functions for each type combination is better, but can cause huge tables for too much [types*vtable_entries]**2.
But anyway I think it's the right thing todo.
Good 'nuff, we shall consider it done. Now to work out the details... :)
But we have to consider "utility" PMCs like C<Env> or C<*struct> that don't really match the concept of MMD.
For those we can either lie about their type, or ignore them and use fallback behaviour for them.
--
Dan
--------------------------------------"it's like this"------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk