Jonathan Worthington wrote:

PMC* get_attr_keyed(PMC* key, STRING* idx)
void set_attr_keyed(PMC* key, STRING* idx, PMC* value) :write
_keyed is consistent, but not particularly descriptive - it's not *really* a keyed access that we're doing here. _super maybe is better, though I'm not sure I like that.

Different object models may choose to use this vtable for different internal behavior, so in this case it's better to stick with the consistent.

Anyway, nobody seems to hate it so far so I'll look at implementing it, if nobody beats me to that.

I've just implemented it in the pdd15oo branch.

While you're at it, any chance of some suggested PIR syntax for calling super-methods? Guess we need a _keyed/_super/_worreva variant of find_method too, for this.

I'd like to keep the concepts of 'super' and 'find_method' separate, if possible. Maybe a PIR syntax of:

obj.SUPER.'foo'()

Which breaks down to:

$P0 = get_super obj
$P0.'foo'()

But, the super-ness of 'find_method' may be too deeply intertwined to allow that. At the very least, we should start by looking at all the places we'll need the concept of 'super' and design them to work together sanely.

Allison

Reply via email to