--- Larry Wall <[EMAIL PROTECTED]> wrote:
> On Fri, Jul 09, 2004 at 11:51:52AM -0700, Austin Hastings wrote:
> : --- Larry Wall <[EMAIL PROTECTED]> wrote:
> : > If there reasonably can be block modifiers, I will unreasonably
> : > declare that there can't be.  
> : 
> : Be as unreasonable as you want -- the grammar's open. :)
> 
> Darn it, when did that misfeature sneak in?  :-)

I can't recall the day, but I'm pretty sure it ended with 'y'.

> 
> : > You can always say:
> : > 
> : >     do { print; next; } if|when /stgh/;
> : > 
> : > (It's still the case that do-while is specifically disallowed,
> : > however.)
> : 
> : What about C<loop>?
> : 
> :   do { print ; next } loop (; true ;);
> 
> I don't see much utility in that, and plenty of room for confusion.
> Does the "next" apply to the statement modifier?  How often do you
> want to explain why
> 
>     do { print $i } loop (my $i = 0; $i < 10; $i++);
> 
> doesn't work?

I want it to work. (I'm about to ask for a <- binding operator, to boot
:)

But I also want do/while to work, solely because repeat/until sucks.
What's the big deal there?

> All leaving out the fact that it doesn't read like English, which is
> a requirement for statement modifiers.

Yeah. What idiot picked 'loop' for a keyword? :)

OTOH, there's a whole slew of prepositions out there. What's the
mechanism for adding them as statement modifiers?

  ++$_ throughout @a;

> Of course, the grammar's open...
> 
> But let me put this on the record: I specifically disrecommend use of
> grammar tweaks that will incite lynch mobs.  You have been warned. 

One man's syntactic sugar is another man's "get a rope." I'm sure
someone will implement C++ style I/O using some number of < and >
characters (it won't be me). 

(And there's the separable keyword issue, natch. "...up with which I
shall not put" in perl? C<print if even else next;>)

=Austin

Reply via email to