http://www.perlmonks.org?node_id=815233


in reply to Disadvantage of using 'eq' operator to compare numbers.

If you want one to be equal to one, you want the numerical operators:
>perl -le"print 1 == '1.0' ?1:0" 1 >perl -le"print 1 eq '1.0' ?1:0" 0

If you want two to be less than ten, you want the numerical operators:

>perl -le"print 2 < 10 ?1:0" 1 >perl -le"print 2 lt 10 ?1:0" 0