なひです.

> From: Shugo Maeda [mailto:shugo / netlab.co.jp]
> Sent: Tuesday, April 06, 1999 6:11 PM

> おそらく「変数はすべてreference」とおっしゃりたかったのではないでしょ
> うか。
> 参照渡しというと、
> 
> def foo(n)
>   n = 1
> end
> x = 0
> foo(x)
> p x
> 
> が1を表示する、というような誤解が生まれてしまいそうですよね。

確かにそうですね.すいません.call-by-referenceはウソです.m(..m

うーん,混乱してきた.
上記の例だとちょっと都合が悪いので,^^;

def foo( n )
  n = []
end
x = [1]
foo( x )
p x

だとすると,C++風に書いたときの
n.operator=( [] )
はxに作用できない.んでfooを

def foo( n )
  n.clear
end

とかすると,これはxに作用できる.
これは単にoperator=()だと解釈するのが変なのかもしれませんね.

call-by-valueだreferenceだ言うより,「=」という代入の,
(JavaやRubyらしい)特徴なんでしょうか...