> You're confusing brevity of declaration > with brevity of use. One needs sufficient brevity of both call and declaration syntax if the mechanism's brevity is to be of use in short scripts.
> Making (limited) circumvention of [$_'s > lexicality] depend on a verbose and > explicit syntax will help too. Sometimes verbosity doesn't matter, but I don't see how it can ever help. I'd buy "clarity". More to the point, the declaration syntax will not help with avoiding accidents at the time of call. So what is driving you guys to deliberately avoid a brief def syntax? > > $foo = sub { print $^_ }; # shorthand for > > $foo = sub { print $_ } is given($_); .... > If you're proposing that there be some special > exemption for $^_ so that it (a) doesn't > placehold a parameter and (b) aliases the > caller's topic instead Well it clearly does placehold something. In method f ($self : $a) { ... } sub f ($a) is given ($line) { ... } what do you call $self and $line? I am talking about being able to placehold these things, whatever you choose to call them. > > Why bother with currying? > > You mean placeholders. I meant currying. (I was listing mechanisms that I believed existed to enable coding brevity.) -- ralph