Acho que o que o Marcio disse isso pois o <i>and</i> computa ambos os lados da expressão, para então retornar um boolean (ou continuar a sequencia de computar mais 'ands' e 'ors')<div><br></div><div><br></div>

<div>$x = 0;</div><div>$x and $x++; # $x = 1</div><div><br></div><div><div>$y = 0;</div><div>$y && $y++; # $y = 0</div></div><div><br></div><div><br><div>perl -e 'use v5.14.0;use v5.14.0; my $m=0; say $m && $m++; say $m'</div>

<div><b>0</b></div><div>0</div><div><div><br></div><div>perl -e 'use v5.14.0;use v5.14.0; my $m=0; say $m and $m++; say $m'</div><div><b>0</b></div><div>1</div></div><div><br></div><div><br></div><div>o retorno foi o mesmo, mas o comportamento não.</div>

<div><br></div><div class="gmail_quote">2012/11/28 Bruno Buss <span dir="ltr"><<a href="mailto:bruno.buss@gmail.com" target="_blank">bruno.buss@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div id=":3in">@Thiago e Marcio:<div>O que vocês estão falando? Pelo amor de Larry...<div>O operador 'and' é *exatamente* igual ao '&&', tirando o nível de precedência... onde o 'and' é um dos que tem a precedência mais baixa. (perldoc perlop por favor...)</div>



<div>Ou seja, você pode fazer tudo que faz com '&&' com 'and', menos contar com short-circuit em condicionais ;)</div><div></div></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>

<div><span style="color:rgb(51,51,51);font-size:x-small">Saravá,</span></div><div><span style="color:rgb(51,51,51);font-size:x-small">Renato CRON</span></div><div><div style="text-align:right"><font size="1" color="#333333"><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a></font></div>

</div><div style="text-align:right"><font size="1" color="#333333"><a href="http://twitter.com/#!/renato_cron" target="_blank">@renato_cron</a></font></div><br>
</div>