Re: - as - with automatic is rw
On Fri, 20 Aug 2004, Larry Wall wrote: On Fri, Aug 20, 2004 at 10:07:02PM +0200, Juerd wrote: : I'm proposing : : for zip(@foos, @bars, @xyzzies) - $foo, $bar, $xyzzy { ... } : for %quux.kv - $key, $value { ... } That'd probably work on the keys only if the hash was declared to have object keys. At least in Perl 5, the key is always a copy. : to mean : : for zip(@foos, @bars, @xyzzies) - $foo is rw, $bar is rw, $xyzzy is rw { ... } : for %quux.kv - $key is rw, $value is rw { ... } : : Comments, anyone? It's really sick, and cute, and I love it. Unfortunately I'm not sure it passes the Are there already too many ways to declare a sub? test... It's vaguely possible I could be persuaded on the basis that for zip @a ¥ @b - { ($^a,$^b) = ($^b,$^a) } could be made to work. But I'm still dubious. And arguably - {...} means the same as sub () {...}, implying there are no arguments. Arguably it already means that. But if - were added, it might be a good reason to make - {...} mean - $_ {...}, using - {...} for - $_ is rw {...}. A good way to remove one more special case (maybe offsetting the extra way to declare a sub, and sweeten the whole deal). -- Adam Lopresto http://cec.wustl.edu/~adam/ Yesterday upon the stair I met a man who wasn't there. He wasn't there again today -- I think he's from the CIA.
Re: - as - with automatic is rw
Larry Wall skribis 2004-08-20 13:31 (-0700): Unfortunately I'm not sure it passes the Are there already too many ways to declare a sub? test... I'm not seeing it as another way. Technically, of course it is different, but by the user, - and - will probably be seen as one thing, with one of them being the other's specialized form. It's really sick Sick would be if - were introduced to make the variable write-only ;) W R @foos - $foo @foos - $foo @foos - $foo It would be consistent, though... Juerd
Re: - as - with automatic is rw
Juerd [EMAIL PROTECTED] writes: Sick would be if - were introduced to make the variable write-only ;) Sicker still would be if - were introduced to make the variable neither readable nor writeable. HTH.HAND. -- $;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b-()}} split//,[EMAIL PROTECTED]/ --;$\=$ ;- ();print$/
Re: - as - with automatic is rw
On Fri, Aug 20, 2004 at 10:07:02PM +0200, Juerd wrote: : I'm proposing : : for zip(@foos, @bars, @xyzzies) - $foo, $bar, $xyzzy { ... } : for %quux.kv - $key, $value { ... } That'd probably work on the keys only if the hash was declared to have object keys. At least in Perl 5, the key is always a copy. : to mean : : for zip(@foos, @bars, @xyzzies) - $foo is rw, $bar is rw, $xyzzy is rw { ... } : for %quux.kv - $key is rw, $value is rw { ... } : : Comments, anyone? It's really sick, and cute, and I love it. Unfortunately I'm not sure it passes the Are there already too many ways to declare a sub? test... It's vaguely possible I could be persuaded on the basis that for zip @a ¥ @b - { ($^a,$^b) = ($^b,$^a) } could be made to work. But I'm still dubious. And arguably - {...} means the same as sub () {...}, implying there are no arguments. Larry
Re: - as - with automatic is rw
On Fri, 20 Aug 2004 13:31:12 -0700, Larry Wall [EMAIL PROTECTED] wrote: It's vaguely possible I could be persuaded on the basis that for zip @a ¥ @b - { ($^a,$^b) = ($^b,$^a) } Shouldn't that be: for zip @a, @b - { ... } --or-- for @a ¥ @b - { ... } ? -- matt
Re: - as - with automatic is rw
On Fri, Aug 20, 2004 at 04:46:33PM -0400, Matt Diephouse wrote: : On Fri, 20 Aug 2004 13:31:12 -0700, Larry Wall [EMAIL PROTECTED] wrote: : It's vaguely possible I could be persuaded on the basis that : : for zip @a ¥ @b - { ($^a,$^b) = ($^b,$^a) } : : Shouldn't that be: : : for zip @a, @b - { ... } : --or-- : for @a ¥ @b - { ... } : : ? Yes, a typo. Though it's not actually clear yet whether you have to write zips args with semicolons, which is why I partially switched to ¥ in midthink. Larry