On Wed, Jun 08, 2005 at 10:26:59PM +0100, The Perl 6 Summarizer wrote: > Missing MMD default functions > Dan was somewhat bemused to find that the MMD functions' defaults had > disappeared when he did a sync with subversion. He wondered whether this > was deliberate. Turns out that it was. I'm not sure whether Chip's ruled > that it was Right though.
I'm leaning toward It's Right. Once MMD came onto the scene, the mere existence of vtable functions was no longer a strong determinant of correct actions, but rather the formal class and its inheritance. So right now, if you're writing a PMC that should participate in MMD like a Float, you're going to have to go to the extremely painful and time-consuming step of deriving from Float. And you can be sure that you won't be used as a Float if you don't derive. I have a hard time seeing a down side here. In fact, I'm really wondering whether, someday, in a distant galaxy's source code repository, vtables could be completely replaced with an MMD mechanism, presumably one optimized for single invocants. But that's hardly a topic for today. > A note WRT exception handlers > Leo posted a quick discussion of the correct use of exception handlers > in Parrot. Essentially, the rule is, your exception handler should jump > back to the point just after the exception handler block: > > push_eh except_N > # Code that might fail > clear_eh > resume_N: > ... > except_N: > ... > goto resume_N > > Easy eh? Yeah, but p6i archives are a poor substitute for documentation. Somebody want to find a good pod to document this, and do so? -- Chip Salzenberg <[EMAIL PROTECTED]>