[#27919] 1.8.4 Preview2 検証 — "URABE Shyouhei aka. mput" <root@...>
卜部です。
まつもと ゆきひろです
[#27944] Ruby 1.8.3 on FreeBSD — Masayoshi Takahashi <maki@...>
高橋征義です。
[#27991] GC.always — Tanaka Akira <akr@...17n.org>
というように、GC を常に動かすというのは GC 関連の問題を発見
まつもと ゆきひろです
In article <1134314081.457781.8573.nullmailer@x31.priv.netlab.jp>,
[#27997] 1.8.4 documents? — "URABE Shyouhei aka. mput" <root@...>
卜部です。
新井です。
新井です。
[#28010] IA64 BSPSTORE — Tanaka Akira <akr@...17n.org>
そういえば、IA64 で gc.c や eval.c に BSPSTORE レジスタの値
まつもと ゆきひろです
In article <1134478762.181062.2779.nullmailer@x31.priv.netlab.jp>,
[#28045] 1.8.4 what remains? — "URABE Shyouhei aka. mput" <root@...>
卜部です。
[#28082] ruby_1_8 Segmentation fault on Cygwin — yanagi@...
柳田です。
山本です。
こんにちは、なかむら(う)です。
山本です。
こんにちは、なかむら(う)です。
柳田です。
山本です。
[#28087] test(?-, file1, file2) — Tanaka Akira <akr@...17n.org>
マニュアルの test(?-, file1, file2) の説明に、
[#28109] Kernel#fail — "URABE Shyouhei aka. mput" <root@...>
さすがにもう誰も使ってないのではないかと思います。Kernel#failは廃止にし
[#28121] post_connection_check with javacc.dev.java.net — Tanaka Akira <akr@...17n.org>
ふと、https://javacc.dev.java.net/ を open-uri でアクセスすると、
[#28127] Intel C++ Compiler and HP aC++/ANSI C on IA64 — Tanaka Akira <akr@...17n.org>
TestDrive で IA64 上の Intel C++ Compiler and HP aC++/ANSI C
渡辺哲也です。
[#28140] ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError) — Tanaka Akira <akr@...17n.org>
HP-UX で HP aC++/ANSI C を使って作った ruby で、openssl や drb のテストをすると、
渡辺哲也です。
In article <200512280307.jBS37nnj005909@pbsg500.nifty.com>,
In message "[ruby-dev:28142] Re: ia64-hpux11.23/socket.sl: this executable file can't load extension libraries (LoadError)"
山本です。
In article <20051228210640.13C71A10.ocean@m2.ccsnet.ne.jp>,
渡辺哲也です。
山本です。
山本です。
In article <20051229114438.44D19F00.ocean@m2.ccsnet.ne.jp>,
なかだです。
In article <ypvtr77wv7q9.wl%nobuyoshi.nakada@ge.com>,
なかだです。
In article <ypvtoe30v1zk.wl%nobuyoshi.nakada@ge.com>,
なかだです。
In article <ypvtmzikv11x.wl%nobuyoshi.nakada@ge.com>,
なかだです。
In article <ypvtwthol15x.wl%nobuyoshi.nakada@ge.com>,
[#28177] Generator dumps core — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#28178] accessing ruby_cbase (nil) dumps core — SASADA Koichi <ko1@...>
ささだです。
[#28181] zsuper (with define_method) dumps core — SASADA Koichi <ko1@...>
ささだです。
[#28182] generator.rb deadlocks — Tanaka Akira <akr@...17n.org>
RUBY_ALWAYS_GC= つきで test_generator.rb を動かすと deadlock が起きます。
[#28184] test_each(TC_SyncEnumerator) fails. — Tanaka Akira <akr@...17n.org>
deadlock は解決しましたが次のようにテストが失敗します。
[ruby-dev:27932] Re: FNM_CASEFOLD on case-sensitive system
山本です。
>かなり横道にそれてるというか、そもそもシステム側で全角文字の文
>字ケースをどうみなすかは関係なくて、rubyでどうみなすと定義する
>かの問題だと思います。別に、Windows版rubyで独自にシステムと同じ
>動作を実装しよう、といっているわけではありません。
なかださんの元々の要望は、Unix で FNM_CASEFOLD が使えないのは
不便だ、というものですよね。それは [ruby-dev:27751] でいいと
思います。そのあとになかださんが
>> >全角文字の文字ケースの区別って、Windowsのバージョンによって違う
>> >んじゃありませんでしたっけ。
とおっしゃったのですが、正直意図が読み取れませんでした。
たぶん「Win9x でも動いてないじゃないか」という話だと思って
追認したのですが・・・
///////////////////////////////////////////////////////
言葉足らずだったかもしれない部分を補足します。
Compare がシステムの挙動と一致している必要があるのは、Dir.glob の
挙動としてそれが望ましいというよりも、おかしな動作をしないように
するために「必要」だからです。
例えば、全角大文字・小文字を区別しない環境で、Compare がこれを区別
してしまう場合(CharLower を入れる前の WinNT での挙動)
Dir.glob("abc") が "ABC" にマッチするのに、都合でワイルドカード
に切り替えて Dir.glob("ab?") とした途端にマッチしなくなるとか、
Dir.glob("**/abc/ABC/**/foo") が abc/abc/abc/foo に
二回マッチしてしまうとか、そういったことが起こります。
こういったことを防ぐには Compare がシステムの挙動に一致している必要が
あるので、それをバイパスするようなコードは置きたくなかったのです。
なかださんの最初のパッチは、おそらくワイルドカードを含む要素にだけ
FNM_CASEFOLD を適用する意図だと思うのですが、そうすると上と同じ
問題が生じるはずです。
それは今の実装だろう。実装が悪いと言われそうなのですが、このあたりは
速度と挙動のトレードオフで、当時もかなり悩みました。ruby_1_8 のように
**/ を使うと同じディレクトリを何度も調べることがあるのは避けたかった
ですし、高速化のために stat(2) を呼ぶ回数を最小化したかったことや、
同じパスが二度現れるのも避けたかったということで、こういう実装になっています。
ruby_1_8 の仕様が、ワイルドカードを含まないものはそのまま stat(2) や
readdir(2) に渡し、ワイルドカードは fnmatch で処理して、フラグは
fnmatch にのみ影響するといったものだったので、それも考えましたが、
**/ が絡んで「ワイルドカードを含まないパターン」が同一ディレクトリに
複数現れた場合、両方 stat(2) に渡すと同じファイルが二度現れる可能性が
あるので、どうしても片方は fnmatch に渡す必要があり、やはり Compare
の問題に戻ってしまうのです。st_uid を比べるというのも、Windows の
ように常に 0 が入るような環境では「本来別のファイルなのに、同じに
扱われてしまう」という、より悪い状態になるので、避けました。
http://www.ccsnet.ne.jp/~ocean/22738/readme の simpler の実装なら
こうした問題は起こらないのですが、速度が気になりますし・・・
あるいはもっといい実装があるのかもしれませんが。