ごとけんです

In message "[ruby-list:13861] Re: What is Object in Ruby? (Re: Ruby and LISP)"
    on 99/04/19, Shin-ichiro Hara <sinara / blade.nagaokaut.ac.jp> writes:

>|(1)変数の束縛
>|
>|var = "obj" とするとき、変数はオブジェクト "obj" に「束縛
>|された」といいます。逆にいえば、オブジェクト "obj" は変数
>|var を束縛する。
>
>後者のオブジェクトを主語にする言い方はあまり使わないかな。
>「変数 var をオブジェクト "obj" に束縛する」と言うのが普通
>ですかね。主語はユーザーか「環境」か。

うーん、そういえば、この場合の "obj" は目的語ですね。主
語はしいていえばユーザーかなぁ。いうなれば「束縛する」と
いう他動詞の受動態ではなくて、「束縛される」という自動詞
のような気もします。

>あと「参照」の日常の言葉使いですが、変数やメソッドを「評価」
>した結果について使うことがあるのを忘れていました。例えば、
>
>  メソッド []=, [] は単なるメソッドであるからどう定義し
>  ようともかまわないが、前者はしばしばオブジェクトの保存
>  という副作用のために定義され、[] は単なる参照として定
>  義されることが多い。
>
>みたいに、まさに「見てるだけ」という意味で「参照」を使う
>こともありそうですね。もちろん見てるだけなのは [] メソッ
>ドの返り値についてではなく [] のレシーバの状態です。

ふとマニュアルを見てみるとすべて「見る」の意味ですね。と
くに「メソッドを使う」と並ぶような使い方で「変数を見る」
という感じ:

   `$'で始まる変数はグローバル変数で,プログラムの どこからでも参照できま
   す.グローバル変数には宣言は必要ありま せん.初期化されていないグローバ
   ル変数を参照した時の値は nilです.[syntax.html#gvar]

また「参照できる」とか「参照した」という表現はありますが
様相を表す「参照している」という表現はないようです。また、
参照をポインタのような意味で使ってるのは glossary.html 
の

   即値,Immediate Value
          参照ではなく,実際の値が変数に格納さ れるもの.Rubyの現在の実装
          ではFixnumとnil/true/falseだけが即 値である.しかし,Fixnumが即
          値でないRubyの実装があっても構わ ないし,モデル上全ての値がオブ
          ジェクトへの参照であると考えて も差し支えない.

だけのようです。まぁこれは Ruby を知らない人向けのドキュ
メントであることを考えれば、 Ruby に即した用法でないとみ
なすこともできますね。

>うーむ、非常に混乱しやすい。

でしょでしょ :-)

原さんが参照という言葉を使わずに済ませるのは困難と感じる
状況はどんなのでしょうか??  そちらを分析した方が話が早い
のではないかと思います。

-- gotoken