here&#39;s more of my 2 cents (have fun Uri! :)<br>
<br>
I notice there&#39;s two examples of for, but no examples of multiple lexical (my) variable assignments in for.<br>
<br>
for ($i = 1, $j = 6; $i &lt; 10; $i++, $j++) {<br><br>
and<br>
<br>
for (my $i = 1; $i &lt; 10; $i++) {<br>
<br>
Normally multiple lexical variables are declared in the same line like<br>
<br>
my ($i, $j);<br>
<br>
But if you do that you can&#39;t initialize them.&nbsp; my ($i=1, $j=2); gives an error.&nbsp; this works ...<br>
<br>
my $i=1;<br>
my $j=2;<br>
<br>
this is the common way.&nbsp; but ...<br>
<br>
my ($i, $j) = (1,2);<br>
<br>
is another way.<br>
<br>
here&#39;s another way, in a for statement:<br>
<br>
for (my $i=1, my $j=6; $i &lt; 10; $i++, $j++) { print &quot;$i\n&quot; }<br>
<br>
and so,<br>
<br>
my $i=1, my $j=2;<br>
<br>
works too.<br>
<br>
even more thrilling is<br>
<br>
my $k = (my $i=1, my $j=2);<br>
<br>
which gives $k a 2.<br>
<br>
<br>
<br>
<div><span class="gmail_quote">On 4/13/07, <b class="gmail_sendername">Liam R E Quin</b> &lt;<a href="mailto:liam@holoweb.net">liam@holoweb.net</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Thu, 2007-04-12 at 11:21 -0400, Uri Guttman wrote:<br><br>&gt; useful? that is what it is designed for. it was taken from c which has<br>&gt; the same operator but no list context to confuse things.<br><br>The , in C that&#39;s used in parameter lists (for example), as in
<br>&nbsp;&nbsp;&nbsp;&nbsp;int m = max(3, 12, 9, 76);<br>is like the comma in a Perl list,<br>&nbsp;&nbsp;&nbsp;&nbsp;my $m = max(3, 12, 9, 76);<br>which is not at all like<br>&nbsp;&nbsp;&nbsp;&nbsp;my @mm = max(3, 12, 9, 76);<br>:-)<br><br>Similarly, the C comma operator, really only used in a few
<br>places these days because it&#39;s dangerous otherwise, is the same<br>as semicolon except that it doesn&#39;t terminate the statement, so<br><br>&nbsp;&nbsp;&nbsp;&nbsp;if (e) a = 3,<br>&nbsp;&nbsp;&nbsp;&nbsp;b = 6,<br>&nbsp;&nbsp;&nbsp;&nbsp;c = 12;<br><br>is the same as<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;if (e) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a = 3;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b = 6;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c = 12;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>except harder to follow.&nbsp;&nbsp;In Perl, you have to use the braces, so the<br>second form is enforced, but you can still do things like<br>
<br>for ($i = 1, $j = 6; $i &lt; 10; $i++, $j++) {<br>&nbsp;&nbsp;&nbsp;&nbsp;stuff<br>}<br><br>and that&#39;s also the main place the comma operator is used in C.<br><br>I&#39;d prefer in most cases<br>for (my $i = 1; $i &lt; 10; $i++) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;my $j = $i + 5;<br>&nbsp;&nbsp;&nbsp;&nbsp;stuff;<br>}<br><br>because the relationship between in and j is now made explicit.<br><br>Liam<br><br>--<br>Liam Quin - XML Activity Lead, W3C, <a href="http://www.w3.org/People/Quin/">http://www.w3.org/People/Quin/
</a><br>Pictures from old books: <a href="http://fromoldbooks.org/">http://fromoldbooks.org/</a><br>Ankh: <a href="http://irc.sorcery.net">irc.sorcery.net</a> <a href="http://irc.gnome.org">irc.gnome.org</a> <a href="http://www.advogato.org">
www.advogato.org</a><br><br></blockquote></div><br>