Luke Palmer <[EMAIL PROTECTED]> writes:

> Juerd writes:
>> What happens to the flip flop operator? Will .. in scalar context
>> remain the same? What comes in place of ...? (An adverb?)

> Anyway, to answer what I _do_ know, isn't .. exactly the same as ... in
> Perl 5?  That was my impression, at least (I've never used the latter in
> practice, but my little test script seems to work).

Not exactly.  From perlop:

     In scalar context, ".." returns a boolean value.  The
     operator is bistable, like a flip-flop, and emulates the
     line-range (comma) operator of sed, awk, and various
     editors.  Each ".." operator maintains its own boolean
     state.  It is false as long as its left operand is false.
     Once the left operand is true, the range operator stays true
     until the right operand is true, AFTER which the range
     operator becomes false again.  It doesn't become false till
     the next time the range operator is evaluated.  It can test
     the right operand and become false on the same evaluation it
     became true (as in awk), but it still returns true once.  If
     you don't want it to test the right operand till the next
     evaluation, as in sed, just use three dots ("...") instead
     of two.  In all other regards, "..." behaves just like ".."
     does.

So it's a bit obscure.  :-)

Jon

Reply via email to