1 + "1" (сумму числа и строки) как 2.По JS и Ruby есть известное видео Wat :)
В целом все эти рассуждения про статические-динамические типизации это такая рационализация травмы, конечно: дизайнеры многих языков программирования в 90-х (ставших популярными сразу или позднее) приняли ряд заведомо ошибочных решений, которые частично извиняются отсутствием (или малоизвестностью) алгоритмов статических проверок, доступных современным создателям компиляторов-интерпретаторов. А из этих случайных ошибок целая философия создаётся.
