Just to be clear for the Anonymous Monk, a loop that keeps adding a constant to an integer does NOT roll around to turn negative. It merely turns the whole long integer to a real number, and adds the constant to that. A very small constant (like 1) will generally not even advance the real value, so such a loop will go forever.
# will not work!
$i = 1;
while ($i > 0)
{ $i++ }
Also see
Equality checking - Comparing floats.
--
[ e d @ h a l l e y . c c ]