Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re^2: array code interpretation

by AnomalousMonk (Canon)
on Apr 10, 2013 at 06:44 UTC ( #1027899=note: print w/replies, xml ) Need Help??

in reply to Re: array code interpretation
in thread array code interpretation

I would quarrel with a couple of steps.

3. Storing the current line in '@array'.

The current line read from the file handle is completely ignored in the code given in the OP (which I admit is probably cut down from some real code). Instead, an element is 'popped' from the front of @array, i.e., its element 0 is removed (see shift), and this element is discarded.

4. Checking if array's first element is true.
4.1. If so, then exiting the block.

The block is exited via last unless element 0 of @array is true, i.e., if it is false. The pitfall of interpreting such double-negativity is a good reason to avoid conditionals based on unless, unless, IMHO, they are dead simple and in the statement modifier form:
    last LINE unless some_condition();
See  unless in Compound Statements and Statement Modifiers in perldoc perlsyn.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1027899]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (5)
As of 2016-10-27 01:14 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (350 votes). Check out past polls.