機械です。
オブジェクトをどう捉えるか、言語によって思想の異なるとこであり、
一番面白いトコでもあります。
※この、スタイルの違いを、ついうっかり「〜は優秀」というと、たいがい
喧嘩になる・・・(汗)
> Rubyでメソッド追加できるのは便利なのですけど、
> それがオブジェクト指向の必要要件ではないとおもいます。
本来、全てオブジェクトベースなら、出来ない=モジュールをクラスで
作らないと手続き(関数)が作れない、という、非常に不便な状況が生まれ
ます。
※この茨の道を行くのがJava・・・
> ふつうの強い型のあるクラス指向の言語(C++/Javaなど)であれば、
> なにか追加したいときには継承して追加しますよね。実際上は
> それでも充分だと思いますがどうでしょう。
静的な言語は、一度決まってしまった型は変更できないはずです。
だから、したくてもできない、というわけですよね。
※Pythonは動的な言語のはずなのに、変更できないのは変だけど・・・
※確かObjective-Cは動的な言語のはずだけど・・・本を見ても、とんと
理解できない・・・
どちらかというと、構造化→抽象データ型の方向で推し進めたのが、
C++やPythonの雰囲気なので、本格的にオブジェクト指向パラダイム
にあわせるには、独自にクラスライブラリを作るしかないでしょうね。
まぁ、1からライブラリを作る楽しみが、あるといえばありますが(汗)
機械伯爵