>CESさん自身が挙げられたこのページに、
>
http://sumim.no-ip.com:8080/wiki/414
>| Smalltalk(アラン・ケイ)は“オブジェクトへのメッセージ送信”という
>| メタファをしてその「オブジェクト指向」と、C++(ストラウストラップ)は
>| 抽象データ型からの発展型(あるいはそれとは別のクラスのあり方)をして
>| その「オブジェクト指向」と位置づけ、その進化の初期の過程で整備されました。
>
>と書いてあるわけですが。読んでいませんか?
ふむぅ…読み飛ばしていたような気がします。
やっぱり、C++ 流儀にどっぷりつかった視点では理解しにくいですから。
>また、既に書きましたが、(私が作っているcrowbarのような)タイプベースの言語では、
>そもそもクラスがないので、抽象データ型からは離れているように思います。
crowbar がどのような言語かはまだじっくりと見ていないのですが、クラスが無かろうとも、オブジェクト指向(モジュール指向)であれば、抽象データ型が無いということは無いと思います。
>
http://kmaebashi.com/programmer/object/othello.html
> ここは読みましたか?
書いてから全編に渡って何度か読み直しました。
結果、読めば読むほど
>オブジェクト指向=モジュール化+マルチプルインスタンス
なんだな、と感じるようになりました。
> 私の「再入門」は、そういう読者をターゲットとしているつもりです。
つまり、
> 「既にモジュール指向は知っている人のためのオブジェクト指向入門」
ということですね。
そういうスタンスだということであれば、私の反論はまったく的外れです。
ご気分を害されましたら、申し訳ございません。
> 「オブジェクト指向もモジュール指向も知らないが、
> マルチプルインスタンスは知っている」人というのは、具体的にどんな経歴(言語
> 経験)で、どんなプログラムを書く人なのでしょうか。
前にも申しましたように、
int i;
int j;
これで、モジュール指向ではありませんがマルチプルインスタンスです。
モジュール化を知る前の人だって、こういうことは素でやるでしょう。
>> マルチプルインスタンスで、何故再利用性が高まっているのでしょうか。
> strtok()みたいに、よそで使われてないか意識しないと使えないようでは、
> 再利用性が高いとは言えないと思うんですが?
うん、確かにそうです。
…何なんでしょう。↑の1行を書くのに1時間悩みました。
たぶんあれです。
私はオブジェクト指向とモジュール指向を混同していたから。
マルチプルインスタンスではなく責務の分離こそオブジェクト指向だと思っていながら、データが1つしかない本当のモジュール指向を全然やってないから、マルチプルインスタンスのありがたみがわかってなかったんじゃないかな、と。
長きに渡お付き合いいただき、ありがとうございました。
ここで頂いたコメントをヒントにして、自分なりにもう少し煮詰めてみたいと思います。