title: String compare in Perl with "eq" vs "=="
body: <p>I am (a complete Perl newbie) doing string compare in an <code>if</code> statement:</p>
  
  <p>If I do following:</p>
  
  <pre><code>if ($str1 == "taste" &amp;&amp; $str2 == "waste") { }
  </code></pre>
  
  <p>I see the correct result (i.e. if the condition matches, it evaluates the "then" block). But I see these warnings:</p>
  
  <blockquote>
    <p>Argument "taste" isn't numeric in numeric eq (==) at line number x. <br/>
    Argument "waste" isn't numeric in numeric eq (==) at line number x.</p>
  </blockquote>
  
  <p>But if I do:</p>
  
  <pre><code>if ($str1 eq "taste" &amp;&amp; $str2 eq "waste") { }
  </code></pre>
  
  <p>Even if the if condition is satisfied, it doesn't evaluate the "then" block.</p>
  
  <p>Here, <code>$str1</code> is <code>taste</code> and <code>$str2</code> is <code>waste</code>.</p>
  
  <p>How should I fix this?</p>