I agree it's one of those cases where Perl's magic is hard to document, since it's only found when you combine TWO features (looping and inputting), not just one (inputting or looping).

There's a tiny mention of it in perlvar, but the real money is in perlop under the "I/O Operators."

My favorite is to simply ask Perl what is going on under the covers with the B::Deparse module. The deparse module will then show you the loop that Perl wrote for you!

$ perl -MO=Deparse -e"while(<>){'???'}" ------------------------------------ LINE: while (defined($_ = <ARGV>)) { '???'; }
For kicks, you can deparse the script which Perl writes for you, when you use command options like -p or -n.
$ perl -MO=Deparse -p -e"???" ------------------------------------ LINE: while (defined($_ = <ARGV>)) { '???'; } continue { print $_; }

--
[ e d @ h a l l e y . c c ]


In reply to Re^4: why can't I just cat the file??? by halley
in thread why can't I just cat the file??? by convenientstore

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.