Well, you've discovered that '++' is magic on
strings of letters. The magic works on strings
like "aaaa" and "aaa111" but on strings like
"1111aaaa" you will get 1112. If the string
begins with a number then perl will whack off
the text and treat it as a number. All the other
math ops will do the same for a string that
begins with a number.
BTW, perl's definition of a number is pretty
complex. "-1e3garg" + "+4ee3" will net you 1004.
$a="-1e3ble";
$b="+4.33eeq";
$c="aaa999";
$d="a9z9z9";
print "a = $a and b = $b\n";
print "c = $c and d = $d\n";
print "a + b = ". $a+$b . "\n";
print "c + d = ". $c+$d . "\n";
print "int(b) = ". int($b) . "\n";
print "++a = ". ++$a . "\n";
print "++b = ". ++$b . "\n";
print "++c = ". ++$c . "\n";
print "++d = ". ++$d . "\n";
try out that code and see what I mean. Note
what happens to $c when the numbers flip and
notice that $d goes poof. =)