お世話になっております。 A.中村です。ごみ。

職場pcが一気に今様の性能になったんで快適モードっす。
おまけに明日は休暇だし。わーい。

On Wed, 21 Apr 1999 19:37:42 +0900
gotoken / math.sci.hokudai.ac.jp (GOTO Kentaro) wrote:

>>「それをやるのとやらないのではその後のオブジェクトの振る舞いが違う」どうかなぁ。多分「振る舞い」の定義は「オブジェクト」の定義に含まれる気もするので上の「破壊的」は「オブジェクト」の定義に依存するんじゃないかなぁ。

じゃあ「オブジェクトの振る舞い」で括り出す、と(^^;

ループ(イテレーション)処理の個々の一回づつの挙動(「定義」)は
勿論「オブジェクト」だの「振る舞い」だのに依存するんですが
それを括ったイテレータ構造は依存してねぇなと。

いや、意味はないんですが(笑)

>例えば、副作用を「振る舞い」に含めるかどうかというのも定義の問題ですよね。僕の考え方は [ruby-list:13885] で示したように外から分かる変化を「振る舞い」と呼ぶことです。つまり、いわゆる副作用も「振る舞い」と考えるのが僕の立場です。ただ、いささか直観に反している気もしてます。

これって、ぐるっと回って結局、「オブジェクトとは何か」を
問わないとしょうがないですよね。「外(からわかる変化)」を定義すれば
おのずと「オブジェクト」も定義されるという程度の意味で。

>A.中村さんは副作用と振る舞いを分けますか??

振る舞いの定義でイテレートします…とかいったら
殺されるなあ(笑)

そもそも副作用って言い回しが好きくないんですよね。
まるで主作用ってものがある(差別できる)かのようで。
#ここが味噌か?<俺思考
まぁ、全部まとめて「作用」でしょうか。
何から何への?そりゃやっぱりオブジェクトからオブジェクトへ。
(自分宛でも他人宛でもいい)

一方振る舞いは、なんかもそっと汎化された概念のような気が。
でも「舞い」っていうくらいだから、まず見た目(interface)の問題
なんだろうなあ。

おもいきりハグラカシですが、俺はこれらの字面については
こーいう感想を持っています。

ところでどうなんでしょう。
副作用って、プログラムが「関数」とかいうもので作れる!という
幻想(少なくともoopな言語を前にすれば)が作り出した語なんじゃないかと
勘ぐっています。
K&Rとかで「副作用」という言い回しは、返し値やパラメ返し(パラメに
何らかのポインタをもらっておいて、そこを操作する)以外に残される
変更全ての総称、でしたよね、たしか…。
でも、なんてーか形式的すぎるなーと、当時からちょっと悩んだもんでした俺。