[#18186] [req] Marshal — keiju@... (Keiju ISHITSUKA)

けいじゅ@日本ラショナルソフトウェアです.

14 messages 2002/09/05
[#18190] Re: [req] Marshal — matz@... (Yukihiro Matsumoto) 2002/09/05

まつもと ゆきひろです

[#18229] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

22 messages 2002/09/09
[#18230] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — nobu.nakada@... 2002/09/09

なかだです。

[#18231] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — "U.Nakamura" <usa@...> 2002/09/09

こんにちは、なかむら(う)です。

[#18232] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — nobu.nakada@... 2002/09/09

なかだです。

[#18233] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — "U.Nakamura" <usa@...> 2002/09/09

こんにちは、なかむら(う)です。

[#18234] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — WATANABE Hirofumi <eban@...> 2002/09/09

わたなべです。

[#18236] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — "U.Nakamura" <usa@...> 2002/09/09

こんにちは、なかむら(う)です。

[#18238] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — WATANABE Hirofumi <eban@...> 2002/09/09

わたなべです。

[#18241] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. — "U.Nakamura" <usa@...> 2002/09/09

こんにちは、なかむら(う)です。

[#18285] rubicon on EWS4800 — Koji Arai <JCA02266@...>

新井です。

59 messages 2002/09/13
[#18322] Re: rubicon on EWS4800 — Koji Arai <JCA02266@...> 2002/09/21

新井です。

[#18333] Re: rubicon on EWS4800 — kjana@...4lab.to (YANAGAWA Kazuhisa) 2002/09/21

In message <20020921.152641.11483667.JCA02266@nifty.ne.jp>

[#18336] Re: rubicon on EWS4800 — nobu.nakada@... 2002/09/21

なかだです。

[#18337] Re: rubicon on EWS4800 — Tanaka Akira <akr@...17n.org> 2002/09/21

In article <200209211605.g8LG52p04564@sharui.nakada.kanuma.tochigi.jp>,

[#18338] Re: rubicon on EWS4800 — nobu.nakada@... 2002/09/21

なかだです。

[#18341] Re: rubicon on EWS4800 — Tanaka Akira <akr@...17n.org> 2002/09/21

In article <200209211628.g8LGSxp04786@sharui.nakada.kanuma.tochigi.jp>,

[#18342] Re: rubicon on EWS4800 — nobu.nakada@... 2002/09/21

なかだです。

[#18343] Re: rubicon on EWS4800 — Tanaka Akira <akr@...17n.org> 2002/09/21

In article <200209211739.g8LHdKp05495@sharui.nakada.kanuma.tochigi.jp>,

[#18345] Re: rubicon on EWS4800 — nobu.nakada@... 2002/09/22

なかだです。

[#18349] Re: rubicon on EWS4800 — Tanaka Akira <akr@...17n.org> 2002/09/22

In article <200209220415.g8M4Fkp24392@sharui.nakada.kanuma.tochigi.jp>,

[#18374] Re: [ruby-cvs] ruby/ext/tcltklib: * eval.c (ruby_run): should set toplevel visibility again here. — WATANABE Hirofumi <eban@...>

わたなべです。

20 messages 2002/09/25
[#18376] Re: [ruby-cvs] ruby/ext/tcltklib: * eval.c (ruby_run): should set toplevel visibility again here. — matz@... (Yukihiro Matsumoto) 2002/09/25

まつもと ゆきひろです

[#18377] Re: [ruby-cvs] ruby/ext/tcltklib: * eval.c (ruby_run): should set toplevel visibility again here. — nobu.nakada@... 2002/09/25

なかだです。

[#18378] Re: [ruby-cvs] ruby/ext/tcltklib: * eval.c (ruby_run): should set toplevel visibility again here. — WATANABE Hirofumi <eban@...> 2002/09/25

わたなべです。

[ruby-dev:18139] Re: autoload patch for ruby-1.7

From: "Yoshinori K. Okuji" <okuji@...>
Date: 2002-09-01 17:38:22 UTC
List: ruby-dev #18139
At Sun, 1 Sep 2002 15:53:24 +0900,
Minero Aoki wrote:
> 実はこの点に関しては GC の影響もあります。ファイルをロードした
> 後には必ず GC が起動されるので、ファイル数が増えるとロードがか
> なり遅くなるんです。Bison が使えるなら ruby.c の load_file() に
> ある rb_gc() を消してみてください。一気にロードしてもかなり速く
> なると思います。(ただし Bison 以外でこれをやると最悪 SEGV します)

なるほど。試してみると、おっしゃる通り、相当速くなりますね! よく事情が
分かってないんですが、Bisonでコンパイルしたparse.cを配布する、あるいは、
Bisonでコンパイルすることを前提にするのは良くないんでしょうか?Bisonは
1.24から出力には何の制限もしないという方針に変更したので、ライセンス的
には問題ないように思えるのですけど。

At Mon, 2 Sep 2002 00:58:26 +0900,
nobu.nakada@nifty.ne.jp wrote:
> definedは修正する必要はないんじゃないでしょうか。

私もそう思って、自分なりに実装していたんですが、

> 確かめたわけじゃありませんが、ファイル名とシンボルの配列をキー
> にするよりも、st_tableを各モジュールに持たせたほうが速いような
> 気がします。

これなら中田さんのパッチの方が優れていますね。

実を言うと、中田さんのパッチにも私のパッチにも、というか、元の師星さん
のパッチに、非互換性の問題が一つ、重大なバグが一つあります。非互換なの
は、オリジナルでは、

autoload :Foo, "foo.rb"
autoload :Foo, "bar.rb"
p Foo

とした時、bar.rbがロードされるのに対し、パッチではfoo.rbがロードされて
しまいます。これは簡単に直せると思います。

バグの方ですが、

autoload :Foo, "foo.rb"
autoload :Bar, "foo.rb"
p Foo
p Bar

のように、一つのファイルに複数の定数が定義されているとき、それぞれに
autoloadを呼ぶと、一つ目は成功しますが、それ以降は失敗することです。こ
れはautoload_deleteが実際のロードのきっかけになった定数しかst_deleteし
ないことが原因だと思います。

それなり速くて素直なのは、逆方向のハッシュテーブルを別に持ち、あるファ
イルからautoloadされるべき定数のリストを簡単に見られるようにしておく方
法です。この方法を使うと、データを重複して持たないといけなくなるので、
あんまり良くないかもしれません。

少々遅くても良いなら、テーブルを全検索して、同じファイルからロードされ
る定数を見付ける方法もあります。これだとautoloadされる定数が1000とかに
なると(そんなことはあり得ないとは思いますが)、すごく遅いと思います。

あまり良いアイディアが浮かばないので、代案をいただけるとありがたいです。

おくじ

In This Thread