[EMAIL PROTECTED] writes:
: On Wednesday 03 April 2002 18:24, Larry Wall wrote:
: >
: > Sure, just say
: >
: > { loop (my $i = intializer(); condition($i); $i = advance($i)) { ... }
: }
: >
: > : Perhaps something like:
: > :
: > : initalizer() -> $i { LOOP: NEXT { $i = advance($i); redo LOOP if
: > : condition($i);} ... }
: > :
: > : except I'm not sure that that would have the same semantics.
: >
: > Other than that C<initializer> isn't going to be expecting a closure,
: > and C<redo> would bypass the NEXT, and there's no loop there to
: > C<redo>, and you'd have to make the parameter C<$i is rw>, why, it
: > should work find. :-)
: >
: > : (Or, more generally, given a for loop with a "my", how sould perl52perl6
: > : deal with it?
: >
: > Probably just by slapping an extra set of curlies around it.
:
: Umm..... didn't you say bare blocks were going away?
Rule #2 was invoked.
The current thinking is that any bare block will never be interpreted
as returning a closure. You have to use explicit C<return {}> or C<sub {}>
to return a closure.
Larry