Larry Wall:
# What I can't figure out is, when you write
#
#     LAST $coderef;
#
# when would it actually do the %MY._LAST_list.push($coderef)?
# Unfortunately, I think it has to do it at compile time, or we can't
# guarantee that the LAST actually gets run if an exception is thrown
# early.  And in that case, $coderef is likely not set yet.  This seems
# like a recipe for confusion, if not disaster.
#
# At the end of the day, I suspect [A-Z]+ blocks will really want to be
# literal blocks because we want to do various sorts of analysis of
# them at compile time.  We wouldn't be able to tell at compile time if
#
#     POST $coderef;
#
# does any horrible side effects, for instance, unless we guarantee that
# $coderef is defined when the POST is compiled.  I think we'd often
# have people trying to write things like:
#
#     my $coderef = sub { ... };
#     LAST $coderef;
#
# and then wondering why it says "Undefined LAST block" or some such.

Maybe all of the [A-Z]+'s get defined each time the block is entered
(or, if the block is being iterated on, the first time the block is
entered during this set of iterations).

--Brent Dax
[EMAIL PROTECTED]
Parrot Configure pumpking and regex hacker

<obra> mmmm. hawt sysadmin chx0rs
<lathos> This is sad. I know of *a* hawt sysamin chx0r.
<obra> I know more than a few.
<lathos> obra: There are two? Are you sure it's not the same one?

Reply via email to