Actually, you don't have to parse the rest of the do block to figure out what is going on. Once you see
";\ndo {\n" you know (from the ";" and newlines) that it isn't a (sensible) conversion of a block to an
expression and (from the "{") that it isn't "do file".
I do not quite agree with that. You do know the expression
modifiers, don't you? EXPR if EXPR and
EXPR for EXPR etc are quite common in Perl.
Every now and then you want to do two or more things in
the first expression. EXPR, EXPR if EXPR
sometimes works, but sometimes it won't. So you use
do {EXPR; EXPR} if EXPR. That do is followed
by a '{' and typically preceeded by a ";\n". And hopefully
you aren't giving special meaning to the newline. ;-)
-- Abigail
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|