演算子オーバーロードの是非

Why Java doesn't need operator overloading (and very few languages do, really)
TestNG開発者の記事.「いらない理由に使われる"その+が何を意味してるのかわからない"というのにはそもそも共感は出来ない.だってo.init()もそうだし,どうやってoが生成されたか過程を見ないと駄目じゃん」と一般的な意見をバッサリ切った後に,必要の無い理由が登場.結局の所数字とかはいいとしても,オブジェクトにおける'+'の多義性によって正確に表現できないのが嫌!ってことなのかな(例だと"Listにaddするのか,Mapにputするのか"と"+とaddAllにする訳?"とか出てる).
それにしても,そんなにも演算子オーバーロードって乱用されてるのかな?C++とかのソースってそれほど読んでないのでよく分かんないや.D言語だとどうだろ?Phobosみても乱用されてるようには見えないけど…