You actually discovered the fact that, "use strict" has a per lexical body scope (and your package is just one type of lexical body). Try this piece of code:
@a = (1,2);
print join(",",@a);
{
use strict;
@b = (1,2);
print join(",",@b);
}
Perl would tell you that @b requires a package name, but it does not complain about @a, because "use strict" is only specified for that {} scope.
This actually makes sense. For example, you get a package from another person, and he didn't "use strict" in his package. Now you use his package in your package, and you specify "use strict". If this "use strict" is not per lexical body scope, but affects the whole script(remember his package is inside your script scope now.), Perl will probably refuse to run your script, because of all those problems in his package caused by your "use strict".
I remember we had a thread a while ago, about the fact that, "use encoding" has a per script scope, instead of a per lexical body scope. You may want to compare those two different types of scopes. I have a node on that topic.
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: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
|
|