I guess you're right :-) I was thinking of ambiguity, like .sub foo :multi(Integer, Integer) .param pmc i :invocant .param pmc j .param pmc k :invocant .end
.sub foo :multi (Integer, Integer) .param pmc j :invocant .param pmc k :invocant .end but I guess parrot will see that the other foo has 2 parameters while the first has 3, and make the selection based on that BTW, :invocant looks a bit like ".invcant", which is also a directive. Can that confuse people? kjs On Dec 20, 2007 10:49 AM, Jonathan Worthington <[EMAIL PROTECTED]> wrote: > Klaas-Jan Stol wrote: > > looks good as far as I can tell. W.r.t. the selection part, the "don't > care" type is missing, which is "_" IIRC. > > > My guess is that if you can specify which parameters are invocants, with > :invocant, then the need for an "any" type goes away, since you just > don't mark them as invocants. And the list only applies to those things > that are invocants. So: > > .sub blah :multi('foo', 'bar') > .param pmc foo :invocant > .param pmc i_so_aint_an_invocant > .param pmc bar :invocant > > # ... > .end > > Jonathan >