At 09:51 AM 9/28/2001 -0700, Brent Dax wrote:
>Dan Sugalski [mailto:[EMAIL PROTECTED]]:
># result = pmc1->vtable[ADD + pmc2->vtable[TYPE](pmc2, NUM)](pmc1,
>pmc2);
>
>Ewwwww...
>
>Well, wait a minute:
>
> #define v_type(pa, cb) vtable[TYPE](pa, cb)
> #define v_add(pa, pb) vtable[ADD + pb->v_type(pmc2, NUM)](pa, pb)
> result = pmc1->v_add(pmc1, pmc2);
> /* I wish -> had the same meaning as it did in Perl */
>
>That's better. Could that be the beginning of XS6? :^)
Nope. :) I find people writing extensions to parrot that directly access
the various internal structures and I change those structures in
intentionally incompatible ways. This stuff's for internal consumption
only. (Though it gets actively dicey with people writing new variable
types, but that's another issue entirely)
Dan
--------------------------------------"it's like this"-------------------
Dan Sugalski even samurai
[EMAIL PROTECTED] have teddy bears and even
teddy bears get drunk