in reply to my least favorite perl feature

What is "overloaded" by design in perl is two possible values for every scalar: a string or a number. The comparison operators let you choose which. Do you want to give up either lexical or numeric sorting by overloading "<=>"?

By the way, if you "use warnings" perl will help you out, like so:

Argument "bbb" isn't numeric in numeric eq (==) at line 4.