Personally, I like the looks of 

        sub foo($a, $b is given) { ... }

> Does this mean that we allow/encourage uses of $_ other than as a default
> for an optional argument?  I think it would be less confusing and
> error-prone to associate the underscore-aliasing with the parameter $_
> will be replacing, i.e. this
> 
>       sub foo($a, $b = given) { ... }
> 
> vs this
> 
>       sub foo($a; $b) is given($b) { ... }
> 
> or this
> 
>       sub foo($a; $b) is given($c) {
>               $b //= $c;
>               ...
>       }
> 
> Furthermore, if the caller can pass undef for the second parameter, I
> don't see a way to distinguish in the third variant between a legitimately
> passed undef, for which we don't want $_, and a missing optional argument,
> for which we do.
> 
> /s
> 
> 

-- 
Adam Lopresto ([EMAIL PROTECTED])
http://cec.wustl.edu/~adam/

"It's times like these that I wish I was a leper"  --Bob.

Reply via email to