Trey Harris wrote: > > > Slurpy parameters follow any required or optional parameters. They are > marked by a C<*> before the parameter: > > sub duplicate($n, *%flag, [EMAIL PROTECTED]) {...} > > Named arguments are bound to the slurpy hash (C<*%flag> > in the above example). Such arguments are evaluated in scalar context. > Any remaining variadic arguments at the end of the argument list > are bound to the slurpy array (C<[EMAIL PROTECTED]> above) and are evaluated > in list context.
So would this mean zero or more" pairs of named arguments, or one or more: sub foo (*%h) I expected this: sub foo (*%h) # one more pairs sub foo (*%h?) # zero or more pairs The answer with pugs now is different: sub foo (*%h) # zero or more pairs sub foo (%h, *%h), # one or more pairs If pugs behavior is intended, I think it should be documented in the spec, as I found unintuitive. Mark