In addition to all the good answers already given:
You don't need two if statements. This is simpler:
if ($USER{coffee} && $USER{coffee} > 5){
$msg = 'You drink too much coffee'
}
It's still redundant, but that's part of the point of using
warnings. Warnings seem to make perl assume less about
what you mean, so you need to tell it more about what you
want. In my experience strict and warnings compliant
code is always larger and slower than 'casual' freestyle
perl code, but for large scripts the price is well worth
what it buys in security and stability.
Update: Abigail makes a good point about sanity
checking. For that perl needs more information about
what we expect our input to contain:
if ($USER{coffee} && $USER{coffee} =~ /\d+/){
$msg = 'You drink too much coffee' if $USER{coffee} > 5;
}
--
Check out my Perlmonks Related Scripts like framechat,
reputer, and xNN.
-
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.
|