Спасибо, понятно.

Хотя есть, конечно, случаи, например, матричные операции или комплексные числа, где переопределение математических операций очень естественно. И наоборот, если его нет получается какое-то уродство - достаточно посмотреть на реализацию комплексных чисел в Lib-е.

С другой стороны, можно было бы просто ввести комплексные числа в язык, не вводя при этом operator overloading. Вроде когда-то для OpenVMS так и делали.