原です。

> わたなべです.

> TRY!PC の P75 から引用.
> 「複数の変数が同一のオブジェクトを指すことがある」

照れるなあ。

西田さんの場合もう一つ、「ローカル変数のスコープの問題」も絡んでいま
すね。いわば同一のオブジェクトを参照する同一の変数が複数の場所で使わ
れている状態かな。


ところで

  array=data.collect{ |x| Hash[* x.split(/;|=/)] }

でいけるかな?と思ったけど、エラーを起こしました。で、2つの事に気付
きました。

1) メソッド [] では * による変数展開は行われない。
2) Array を Hash に変換するメソッドが組み込みではない。

1) はやってもいいのではないでしょうか?
2) も欲しい。{*array} なんて手もあるけどどうでしょう。