On Wed, Nov 29, 2006 at 08:49:27PM +0100, Leopold Toetsch wrote: > Am Mittwoch, 29. November 2006 05:50 schrieb Matt Diephouse: > > It also means that "string", "int", and "float" no longer work as MMD > > types -- you can't distinguish between native types and PMCs. I think > > this is the right way to go now that we have autoboxing; I don't see > > any reason to differentiate. > > I don't think this is the best strategy. It seriously prevents > all native type optimizations. While 'Integer' should be > MMD-distancewise close to 'int', it should not be the same.
Just to repeat my comments from #parrot, I agree with Leo that treating "int" as always (and only) being identical to the autobox type feels very wrong somehow. However, if we're short-term restricted to choosing between the existing implementation (where '_' doesn't match native types) and this patch (where we can't differentiate native types), I definitely want the patch. It's the lesser of the two evils. IWBNI the native types were considered in both their native and autoboxed aspects for purposes of selecting candidate MMD subs, with a match on native types resulting in a shorter MMD distance than those involving autoboxing. Pm