Re: Don't tell me what I can't do!

2006-10-03 Thread Aaron Sherman
chromatic wrote: On Monday 02 October 2006 12:32, Jonathan Lang wrote: Before we start talking about how such a thing might be implemented, I'd like to see a solid argument in favor of implementing it at all. What benefit can be derived by letting a module specify additional strictures for its

Re: Nested statement modifiers.

2006-10-03 Thread Aaron Sherman
Trey Harris wrote: In a message dated Fri, 1 Sep 2006, jerry gay writes: On 9/1/06, Trey Harris [EMAIL PROTECTED] wrote: In a message dated Fri, 1 Sep 2006, Paul Seamons writes: I'm not sure if I have seen this requested or discussed. This was definitively rejected by Larry in 2002:

Re: Nested statement modifiers.

2006-10-03 Thread Paul Seamons
Of course, that wasn't exactly what you were asking, but it does present a practical solution when you want to: {say $_ for =}.() if $do_read_input; Which I just verified works fine under current pugs. Thank you. Hadn't thought of that. I think that is workable. But it also brings

Re: Nested statement modifiers.

2006-10-03 Thread Aaron Sherman
Paul Seamons wrote: Of course, that wasn't exactly what you were asking, but it does present a practical solution when you want to: {say $_ for =}.() if $do_read_input; Which I just verified works fine under current pugs. Thank you. Hadn't thought of that. I think that is workable.

Re: Nested statement modifiers.

2006-10-03 Thread Paul Seamons
It relates to some old problems in the early part of the RFC/Apocalypse process, and the fact that: say $_ for 1..10 for 1..10 Was ambiguous. The bottom line was that you needed to define your parameter name for that to work, and defining a parameter name on a modifier means that you

Re: Nested statement modifiers.

2006-10-03 Thread Aaron Sherman
Paul Seamons wrote: It relates to some old problems in the early part of the RFC/Apocalypse process, and the fact that: say $_ for 1..10 for 1..10 Was ambiguous. The bottom line was that you needed to define your parameter name for that to work, and defining a parameter name on a

Re: Nested statement modifiers.

2006-10-03 Thread Juerd
Aaron Sherman skribis 2006-10-03 13:46 (-0400): In Perl 6, that's simplified to: {{say 1 if 1}.() if 1}.() if 1; Which can also be written as: do { do { say 1 if 1 } if 1 } if 1; Which if crammed together the way you wrote it, turns into: do {do {say 1 if 1} if 1} if 1; Or perhaps

Re: Nested statement modifiers.

2006-10-03 Thread Damian Conway
Juerd wrote: Which can also be written as: do { do { say 1 if 1 } if 1 } if 1; Sorry, no it can't. From S4 (http://dev.perl.org/perl6/doc/design/syn/S04.html#The_repeat_statement): Unlike in Perl 5, applying a statement modifier to a do block is specifically disallowed Which if

Re: Nested statement modifiers.

2006-10-03 Thread Damian Conway
[Apologies for the last post. Gmail got a little eager. Here's what I meant to send...] Juerd wrote: Which can also be written as: do { do { say 1 if 1 } if 1 } if 1; Sorry, no it can't. From S4 (http://dev.perl.org/perl6/doc/design/syn/S04.html#The_repeat_statement): Unlike in

Re: Nested statement modifiers.

2006-10-03 Thread Audrey Tang
在 Oct 4, 2006 7:46 AM 時,Damian Conway 寫到: [Apologies for the last post. Gmail got a little eager. Here's what I meant to send...] Juerd wrote: Which can also be written as: do { do { say 1 if 1 } if 1 } if 1; Sorry, no it can't. From S4 (http://dev.perl.org/perl6/doc/design/syn/

Re: Nested statement modifiers.

2006-10-03 Thread Damian Conway
Audrey asked: However, I wonder if this is too strict. Disallowing while and until after a do block is fine (and can be coded directly in those two statement modifier macros), but is there a reason to disallow other modifiers? Well, for a start, there's this syntactic problem: do { say

Re: Nested statement modifiers.

2006-10-03 Thread Audrey Tang
在 Oct 4, 2006 10:17 AM 時,Damian Conway 寫到: Audrey asked: However, I wonder if this is too strict. Disallowing while and until after a do block is fine (and can be coded directly in those two statement modifier macros), but is there a reason to disallow other modifiers? Well, for a start,

Re: Nested statement modifiers.

2006-10-03 Thread Damian Conway
The use case here is do { .foo for @bar } if $baz; But I guess you can always protect it with a parens: (do { .foo for @bar }) if $baz; Or just: if $baz { .foo for @bar } or even: @bar».foo if $baz; ;-) Damian