サイトウです。

青山さん、
> > このようなメソッド以外の、代入*演算子*は、変数とオブジェクトを関連付け
> > るだけであり、そのオブジェクトに対してはなんら影響を与えません。(GC は
> > 別として)
> 
> やはり代入という呼び方が誤解の元なんでしょうね。なんとなく、「入」とい
> う文字を見て、中身が変更されるような、破壊的なイメージを浮かべてしまい
> ますから。
> 
> 命名演算子でしょうかね。命=オブジェクトはちょっと多げさですが。
> 
> なかなか良い呼び方、説明が見付からないもの。イテレータ、代入。

むむ。そうか!

自分の最初の例の場合、
>a.itr do |i|
>    i += 10
>    print i, ","
>end
もし、Integer#plus!(int)みたいなメソッドがあったならば

a.itr do |i|
    i.plus!(10)
    print i, ","
end

とすれば、OKなんでしょうかね。

Stringの場合も、 "+=" でなく "<<" を使えばオブジェクト実体が
変更されますね。

一つ利口になりました。

-----------------------------------
サイトウ ヒロシ
HiroshiSaito / pob.org