On Sun, Mar 04, 2007 at 09:44:59PM -0800, Jonathan Lang wrote:
: Larry Wall wrote:
: >: Finally: when used as a statement modifier, is "given" considered to
: >: be conditional or looping? (Gut instinct: conditional.)
: >Why does it have to be one or the other? It's just a topicalizer.
: One implication of replacing "statement_modifier" with
: "statement_mod_cond" and "statement_mod_loop" is that every statement
: modifier has to be defined as one or the other.
Ah, in that sense 'given' is currently considered a loop, and 'when'
is considered a conditional, so it's legal to say
say "halt" when 42 given $answer;
That follows from the recent decision to allow a condition inside a loop
to make it easy to write list comprehensions. (The same decision that
turned 'for' into a map clone, by the way, and made 'if' return () when
false, at least in the absence of an 'else'.)