Isto mesmo Samir, você pode escrever coisas assim :<br><br><span style="font-family: courier new,monospace;">&lt;code&gt;</span><br style="font-family: courier new,monospace;"><br style="font-family: courier new,monospace;">

<span style="font-family: courier new,monospace;">for my $i&nbsp; (0..100) {</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp; imprimir($i);</span><br style="font-family: courier new,monospace;">

<span style="font-family: courier new,monospace;">}</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;"><br>sub imprimir {<br>&nbsp; my $i = shift;<br>&nbsp; print &quot;$i\n&quot;;<br>

}<br><br>&lt;/code&gt;</span><br><br>Apesar das variáveis terem o mesmo nome, elas possuem endereço de memória distintas, por isto são variáveis diferentes.&nbsp; Mas tome cuidado com isto, pois o código abaixo não vai rodar exatamente como você acha, teste você mesmo.<br>

<br><span style="font-family: courier new,monospace;">&lt;code&gt;</span><br style="font-family: courier new,monospace;">
<br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">my $i = 0;<br>for my $i&nbsp; (0..100) {</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp; imprimir($i);</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">}</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;"><br>
sub imprimir {<br>&nbsp; print &quot;$i\n&quot;;<br>
}<br>
<br>
&lt;/code&gt;</span><br>
<br>Outro detalhe importante são os closures,&nbsp; mas acho melhor você compreender bem a questão da variável local e global.<br><br>Abraços,<br><br>Solli M. Honório<br><br style="font-family: courier new,monospace;"><div class="gmail_quote">
2008/4/28 Samir Cury &lt;<a href="mailto:rimasy@gmail.com" target="_blank">rimasy@gmail.com</a>&gt;:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

Pessoal,<br><br>Vendo algumas palestras lá no ET pensei o seguinte:<br><br>foi falado muito de <br>&nbsp;<br>{<br><br>&nbsp; Escopo<br><br>} <br><br>então se eu &quot;tranco&quot; o meu loop dentro do escopo usando $i como índice, e declaro &quot;$i&quot; como &quot;my $i&quot;, então ela será uma variável local dentro daquele escopo APENAS, ou seja, para o resto do programa (fora do escopo) ela nem existe, então eu posso em todos os loops usar a mesma variável.<br>


<br>Bom foi isso que eu deduzi, queria uma confirmação.<br><br>Valeu!<br>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><br><br clear="all"><br>-- <br>&quot;o animal satisfeito dorme&quot;. - Guimarães Rosa