[#32695] md5.so (LoadError) — FUKUI Osamu <o-fukui@...>
はじめまして 福井と申します。
In message "[ruby-list:32695] md5.so (LoadError)"
福井です。
In message "[ruby-list:32698] Re: md5.so (LoadError)"
[#32721] コマンドラインオプション -K と -e — "Tatsuaki Nagai" <Tatsuaki_Nagai@...>
永井@KCです。
[#32727] require "./xxx" の「カレントディレクトリ」の意味 — Take_tk <ggb03124@...>
あるディレクトリαにあるスクリプトAに「require "./xxx"」と書いてあると、
まつもと ゆきひろです
たけ(tk)です。
In article <1007384829.854960.10474.nullmailer@ev.netlab.jp>,
たけ(tk)です。
まつもと ゆきひろです
[#32772] newdate — tadf@...
ふなばです。
In article <20011204234521G.tadf@kt.rim.or.jp>,
ふなばです。
まつもと ゆきひろです
ふなばです。
In article <20011210180612F.tadf@funaba.org>,
ふなばです。
なひです。
ふなばです。
なひです。
ふなばです。
まつもと ゆきひろです
ふなばです。
In article <20011210162702A.tadf@funaba.org>,
ふなばです。
In article <20011212093832C.tadf@funaba.org>,
ふなばです。
In article <20011212135605G.tadf@funaba.org>,
まつもと ゆきひろです
すいません。件名が変だったので、再送します。コメントをくださる方は、
須賀です。昨日の議論を反映して、仕様案(*)を改版しました。
[#32797] dir_config (mkmf.rb) のオプション指定の優先順位 — tamra@...
なかだです。
In <200112060205.fB625u928906@sharui.nakada.kanuma.tochigi.jp>
なかだです。
In <200112060838.fB68bx924929@sharui.nakada.kanuma.tochigi.jp>
なかだです。
[#32807] irb 0.8 release — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
From: keiju@rational.com (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
From: keiju@rational.com (石塚圭樹)
けいじゅ@日本ラショナルソフトウェアです.
From: keiju@rational.com (石塚圭樹)
From: rubikitch <rubikitch@ruby-lang.org>
けいじゅ@日本ラショナルソフトウェアです.
From: keiju@rational.com (石塚圭樹)
[#32814] 添削お願い — Take_tk <ggb03124@...>
見てのとおり、ユーザが指定した拡張子のリストの文字列を正規表現の配列に変
[#32836] configure.in for netbsd — hiramatu@...
平松と申します。
[#32858] [ANN] html-template 0.15 — IKEBE Tomohiro <ikebe@...>
[#32869] RAA update — rubikitch <rubikitch@...>
るびきちです。
[#32904] Segmentation fault — em6t-kbt@...
久保田です。
[#32923] Ruby/GSL — yoshiki@...
常定と申します。
[#32930] irbsh の rehash が遅い — rubikitch <rubikitch@...>
るびきちです。
新井です。
[#32935] Ruby256 倍本 " 界道編 " — shukaku@...
原です。
なかだです。
新井です。
[#32945] class-in-state — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
[#32948] [uri.rb] strip or not — rubikitch <rubikitch@...>
るびきちです。
[#32974] ruby で組んだ CGI の挙動がおかしい — Toru MITANI <toru_m@...2.dion.ne.jp>
[#32987] [Media Watch] 「横着プログラミング」 — Shin-ichiro HARA <sinara@...>
原です。
[#32989] write to $> causes error on mswin32/mingw32 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
あおきです。
こんにちは、なかむら(う)です。
[#33014] "Walrus" on LinuxJapan — Taku Nakajima <tnakajima@...>
中島@ブレーンです。
[#33026] Ruby 1.6.6 リファレンスマニュアル日本語版 (RD) — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
[#33047] regex bug? — Yamamoto Atsushi <yamamoto@...>
山本@東大駒場です.
[#33050] cgi.rb で cookie の encoding について — Beyond <beyond@...>
こんにちは、なかむら(う)です。
なかだです。
なかだです。
On Fri, 28 Dec 2001 15:46:50 +0900
青山です。
In message <20011228054515.726.qmail@localhost>
青山です。
青山です。
In article <20011229013722.1869.qmail@localhost>,
青山です。
青山です。
宮川といいます。
(根深いところでこじれているようですが…そこはひとまずおいといて、)
[#33114] 新年会 — "Shin'ya Adzumi" <adzumi@...>
あづみです。
[ruby-list:32938] Re: irbsh の rehash が遅い
新井です。
In message "[ruby-list:32930] irbsh の rehashが遅い"
on 15 Dec 2001 06:39:45 +0900,
rubikitch <rubikitch@ruby-lang.org> wrote:
> るびきちです。
>
> irbshにおいて、Win2k+Cygwinではrehashが遅いという報告がありました。
> 5分くらいもかかってしまうみたいです。
> FreeBSDやLinuxではすぐにおわります。
>
> 一部を抜き出してみるとこんなコードです。
> @@path_hashの内容をMarshalで保存するパッチをいただきました。
>
> これってCygwinのバージョンの問題なのでしょうか?
Windows 2000
CYGWIN_NT-5.0 arai 1.3.6(0.47/3/2) 2001-12-05 18:15 i686 unknown
ruby 1.6.5 (2001-10-05) [i686-cygwin]
で試しました。executable? が遅いようです。Cygwin の stat(2)
は遅いというのは何かで見たことありますが Win2K でもそうなん
ですね(Win9x だったらファイルの中身を調べたりする必要があっ
て遅いということはあるかと思うんですが)。
このメールの最後にprofileを付けます。
コマンドのハッシュなら実行するたびにそのコマンドを探して見つ
かったらその都度ハッシュにいれるのがいいのではないでしょうか?
そうすれば最悪でも1回のコマンド実行につき $PATH の要素数の
stat() 呼び出しで済みます。
ちらっと見たところ bash がそんな感じでした。たぶん。
bash でも、空のコマンドラインでいきなり TAB (コマンドの completion)
すると、すごい時間がかかるので
shopt -s no_empty_cmd_completion
してました。これを unset して TAB してみましたが、確かに
Linux なんかだと全然早いですねえ。はあ。Cygwin だと全然遅い
ですが。
--
新井康司 (Koji Arai)
ENV['PATH'] = '/usr/bin'
module Irbsh
@@path_hash = nil
module_function
def rehash1
path_hash = {}
ENV['PATH'].split(':').reverse.each {|p|
Dir[File.join p, "*"].each {|f|
path_hash[ File.basename f ] = f if File.executable? f
}
}
@@pash_hash = path_hash
nil
end
def rehash2
path_hash = {}
ENV['PATH'].split(':').reverse.each {|p|
Dir[File.join p, "*"].each {|f|
# File.stat f
path_hash[ File.basename f ] = f
}
}
@@pash_hash = path_hash
nil
end
end
p t1 = Time.now
Irbsh.rehash2
p t2 = Time.now
Irbsh.rehash1
p t3 = Time.now
p t2 - t1
p t3 - t2
__END__
Sat Dec 15 16:02:53 GMT+9:00 2001
Sat Dec 15 16:02:54 GMT+9:00 2001
Sat Dec 15 16:02:59 GMT+9:00 2001
0.421
5.748
% cumulative self self total
time seconds seconds calls ms/call ms/call name
56.97 0.65 0.65 4 162.50 570.50 Array#each
19.28 0.87 0.22 640 0.34 0.34 File#executable?
12.36 1.01 0.14 1280 0.11 0.11 File#basename
11.39 1.14 0.13 1280 0.10 0.10 Hash#[]=
0.00 1.14 0.00 1 0.00 761.00 Irbsh.rehash1
0.00 1.14 0.00 2 0.00 0.00 Array#clone
0.00 1.14 0.00 2 0.00 0.00 Module#method_added
0.00 1.14 0.00 2 0.00 0.00 Float#to_s
0.00 1.14 0.00 10 0.00 0.00 IO#write
0.00 1.14 0.00 1 0.00 0.00 Module#module_function
0.00 1.14 0.00 2 0.00 0.00 Kernel.singleton_method_added
0.00 1.14 0.00 2 0.00 0.00 Kernel.inspect
0.00 1.14 0.00 3 0.00 0.00 Time#inspect
0.00 1.14 0.00 3 0.00 0.00 Time#now
0.00 1.14 0.00 2 0.00 0.00 ENV.[]
0.00 1.14 0.00 1 0.00 380.00 Irbsh.rehash2
0.00 1.14 0.00 5 0.00 0.00 Kernel.p
0.00 1.14 0.00 2 0.00 0.00 Time#-
0.00 1.14 0.00 2 0.00 0.00 File#join
0.00 1.14 0.00 2 0.00 0.00 String#split
0.00 1.14 0.00 2 0.00 0.00 Dir#[]
0.00 1.14 0.00 1 0.00 0.00 ENV.[]=
0.00 1.14 0.00 2 0.00 0.00 Array#reverse
0.00 1.14 0.00 1 0.00 1141.00 #toplevel