in reply to Simple adding numbers

This is just another way of saying the same thing but in Perl 0.1 isn't the value you think it is. Try the following:

printf("%.64f\n", 0.1);

On my system it prints:

0.1000000000000000100000000000000000000000000000000000000000000000

Note the extra 1 in the 17th place. The result may be different on your system. It depends on how floating point numbers are stored. Different systems store them differently.