ポリモフィズムに代表されるオブジェクト指向という概念は15年前くらいから流行りはじめたけど、
オブジェクトモデルなどという考え方自体が、実に馬鹿げてると思う。

物事を単純化しようとした結果、逆に複雑になってしまってる典型例だと思う。
一見しただけだと、単純化したように見えるので(ほら!同じ名前のメソッドで、いろんなオブジェクトを同じ操作で使えるよ!など)
なんとなく簡単になったように錯覚してるだけだと思う。
実は、この代償として、とんでもないデバッグの難解さを含めてしまってるのに。

実際は、多態性によって、分岐と、その組み合わせの可能性が爆発的に増えるのだから、
デバッグ時の推論すべき量も指数関数的に増えてしまう。
これがプログラム全体で行われるとしたら、まさに保守の悪夢だとしか思えない。

個人的に思うのは、
言語や、設計や、思想をいくら捻ったところで、
ある問題自体に含まれる潜在的な複雑性ってのは、けして消せないし、どんな組み方をしても形を変えてソースに残りつづけるような気がする。
ポリモフィズムのようなものは、その潜在的な複雑性を、単にデバッグの段階まで押しやってるだけな気がする。
だから一見ソースが単純明快になったように感じるけど、逆にその単純さがデバッグの時には複雑性として襲いかかってくるのだから、結局+ー0なのだと思う。

いたずらに単純さや明解さを謳う新たな言語や設計思想が現れたとしても、永久機関の話のように怪しいと思って疑った方がいいと思う。絶対にどこかに皺寄せが行ってるはずだと。