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


in reply to Re^4: Numification of strings
in thread Numification of strings

> I guess Ruby and Python need to do it that way because the + operator is overloaded for both numeric addition and string concatenation, while Perl has a separate string concatenation operator, and so there is no ambiguity.

exactly, look at JS to see the mess happening, when you have implicit convertions combined with only one operator for addition AND concatenation.

BTW: Ruby's .to_i and .to_f are closer to Perl than JS parseInt() and parseFloat(). Trying to convert a non-numeric string like "abc" in Perl and Ruby produces 0 but in JS it's NaN (not-a-number) a value which doesn't produce a warning!

perl -we' print 4+"abc"' Argument "abc" isn't numeric in addition (+) at -e line 1. 4

Cheers Rolf