From: Masatoshi SEKI Date: 2000-12-27T16:29:00+09:00 Subject: [ruby-list:26889] Re: 分散オブジェクト (Re: Re: fork problem?) 咳といいます。 もたもたしてるうちに前田さんから反応が… > > もし仮に、ローカル実行と同じセマンティクスで分散実行できる > > Ruby 処理系を作ろう、という場合は、極力コピーはせずに遠隔参照で扱う一方、 > > 一部のクラスのインスタンス (immutable かつ identity なし) については > > ネットワーク経由でインスタンスをコピーするか… > > しかないんじゃないかと思います。 > > Rubyだと、 > > 1.instance_eval { @foo = 1 } > > というのがあるので、実はFixnumやnilも完全にimmutableとは言えない > のですよね。ううむ。 現実的な(ありそうな)ところでは、require 'jcode'とかありますよね。 Stringの挙動も動的に変わるので「同じ挙動」を期待するとずっと 参照にしないとダメそうですよね。 ある程度のところで「同じ挙動」はあきらめて、てコピーで渡す のが実際のアプリケーションではいいのかな、と思います。 # うーむ。文がヘン ここで少し話がズレマス。 今回のスレッドでつらつら考えていたのですが、分散オブジェクトを使った アプリケーションって実は「挙動が違う」のもうれしいんじゃないかと思う ようになってきました。 うまく言えないけどのですが、無理して書くと、 ヨソ様にあるオブジェクトがヨソ様なりに実装されてるのがうれしい というか、って全然話がまとまってないですね。すびません。 # このもやもやをいつかまとめたいです。 ところで さらに話は全然飛びますが、 首藤さんのVMでは、GCはどうされているのですか ?? 遠隔参照がなくなったことをオブジェクトの持ち主のVM(?)に通知するのですか??