[#12387] reducing logical operation — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

17 messages 2001/03/07
[#12388] Re: reducing logical operation — EGUCHI Osamu <eguchi@...> 2001/03/07

えぐち@エスアンドイー です。

[#12389] Re: reducing logical operation — nobu.nakada@... 2001/03/07

なかだです。

[#12391] Re: reducing logical operation — EGUCHI Osamu <eguchi@...> 2001/03/07

えぐち@エスアンドイー です。

[#12404] fork in threads — keiju@... (Keiju ISHITSUKA)

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

14 messages 2001/03/09

[#12405] at_exit — keiju@... (Keiju ISHITSUKA)

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

15 messages 2001/03/09
[#12409] Re: at_exit — matz@... (Yukihiro Matsumoto) 2001/03/10

まつもと ゆきひろです

[#12411] Re: at_exit — keiju@... (石塚圭樹) 2001/03/10

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

[#12425] bignum % の結果が負数になることがある — Hisayasu Nakao <h-nakao@...>

最近、ruby-1.6.2を使い出したばかりの中尾です。

39 messages 2001/03/12
[#12427] Re: bignum % の結果が負数になることがある — WATANABE Hirofumi <eban@...> 2001/03/12

わたなべです。

[#12463] Re: bignum % の結果が負数になることがある — Takahiro Kambe <taca@...> 2001/03/13

In message <4518-Mon12Mar2001145434+0900-eban@os.rim.or.jp>

[#12464] Re: bignum % の結果が負数になることがある — matz@... (Yukihiro Matsumoto) 2001/03/13

まつもと ゆきひろです

[#12466] Re: bignum % の結果が負数になることがある — Takahiro Kambe <taca@...> 2001/03/13

In message <984469222.234203.1007.nullmailer@ev.netlab.zetabits.com>

[#12475] Re: bignum % の結果が負数になることがある — matz@... (Yukihiro Matsumoto) 2001/03/14

まつもと ゆきひろです

[#12476] Re: bignum % の結果が負数になることがある — Takahiro Kambe <taca@...> 2001/03/14

In message <984550885.417146.3670.nullmailer@ev.netlab.zetabits.com>

[#12480] Re: bignum % の結果が負数になることがある — matz@... (Yukihiro Matsumoto) 2001/03/14

まつもと ゆきひろです

[#12481] Re: bignum % の結果が負数になることがある — Takahiro Kambe <taca@...> 2001/03/14

In message <984553493.009507.3747.nullmailer@ev.netlab.zetabits.com>

[#12488] Re: bignum % の結果が負数になることがある — matz@... (Yukihiro Matsumoto) 2001/03/14

まつもと ゆきひろです

[#12493] Re: bignum % の結果が負数になることがある — Takahiro Kambe <taca@...> 2001/03/14

In message <984579430.080967.5569.nullmailer@ev.netlab.zetabits.com>

[#12578] require 'win32api' — Kazuhiro NISHIYAMA <zn@...>

require 'win32api'のエラーメッセージがわかりにくいと

21 messages 2001/03/20
[#12579] Re: require 'win32api' — nobu.nakada@... 2001/03/20

なかだです。

[#12598] Re: require 'win32api' — nobu.nakada@... 2001/03/21

なかだです。

[#12582] finalizer problem — keiju@... (Keiju ISHITSUKA)

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

20 messages 2001/03/20
[#12583] Re: finalizer problem — matz@... (Yukihiro Matsumoto) 2001/03/20

まつもと ゆきひろです

[#12585] Re: finalizer problem — keiju@... (石塚圭樹) 2001/03/20

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

[#12591] Re: finalizer problem — matz@... (Yukihiro Matsumoto) 2001/03/20

まつもと ゆきひろです

[#12619] Re: finalizer problem — keiju@... (石塚圭樹) 2001/03/22

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

[#12605] extern inline (ruby.h) ruby-1.6.3 — WATANABE Tetsuya <tetsu@...>

渡辺哲也です。

17 messages 2001/03/22
[#12606] Re: extern inline (ruby.h) ruby-1.6.3 — matz@... (Yukihiro Matsumoto) 2001/03/22

まつもと ゆきひろです

[#12607] Re: extern inline (ruby.h) ruby-1.6.3 — WATANABE Tetsuya <tetsu@...> 2001/03/22

渡辺哲也です。

[#12608] Re: extern inline (ruby.h) ruby-1.6.3 — matz@... (Yukihiro Matsumoto) 2001/03/22

まつもと ゆきひろです

[#12674] Was: [rubyist:0454] Re: to_str — Kenichi Komiya <kom@...1.accsnet.ne.jp>

21 messages 2001/03/25
[#12675] Re: Was: [rubyist:0454] Re: to_str — matz@... (Yukihiro Matsumoto) 2001/03/26

まつもと ゆきひろです

[#12678] Re: Was: [rubyist:0454] Re: to_str — Kenichi Komiya <kom@...1.accsnet.ne.jp> 2001/03/26

[#12681] Re: Was: [rubyist:0454] Re: to_str — matz@... (Yukihiro Matsumoto) 2001/03/26

まつもと ゆきひろです

[#12687] Re: Was: [rubyist:0454] Re: to_str — Kenichi Komiya <kom@...1.accsnet.ne.jp> 2001/03/27

[#12688] Re: Was: [rubyist:0454] Re: to_str — matz@... (Yukihiro Matsumoto) 2001/03/28

まつもと ゆきひろです

[#12710] Re: Was: [rubyist:0454] Re: to_str — Kenichi Komiya <kom@...1.accsnet.ne.jp> 2001/03/31

[ruby-dev:12702] Errno

From: MOROHOSHI Akihiko <moro@...>
Date: 2001-03-29 13:41:43 UTC
List: ruby-dev #12702
師星といいます。

From: Koji Arai <JCA02266@nifty.ne.jp>
Subject: [ruby-dev:12697] Re: errno on non-blocking flock() by fcntl()
Date: Wed, 28 Mar 2001 22:54:52 +0900
> > |そして、error.c の修正は上記とは関係ないのですが、現在のrubyでは
> > |  EWOULDBLOCK と EAGAIN が同じ値のシステム
> > |の場合どちらの例外があがるかはrubyの実装依存になります。
> > |
> > |これは利用者が困る場合があるのではないかと思い、
> > |同じ値の errno に対してクラスを1つにし、他はそれを代入した
> > |定数にしてみました。
> > 
> > こっちは皆さんの意見を聞いてからにします。私は
> 
> ま、ちょっと思っただけなので頭の片隅にでも置いて頂ければ良い
> です。

私は、新井さんのこの変更に賛成です。

理想は、EAGAINとEWOULDBLOCKが同じ値の場合、whenやrescueの判定では
どっちを書いていてもマッチして、かつ
p Errno::EWOULDBLOCK => Errno::EAGAIN のようにならないことですが、
クラスオブジェクト(rescueの判定をkind_ofで行う、また、自分の名前を知って
いて、名乗ってしまう)を、errnoの値でなく名前に対応させている時点で無理が
あり、どちらかをあきらめる必要があるものと思います。

Errno::EAGAIN != Errno::EWOULDBLOCK の場合、プログラムが書かれた通りに動
かない、とも言えるのではないでしょうか?
例えばFreeBSDではNONBLOCKなソケットから読もうとしてブロックする場合、
read(2)のmanにはEAGAINしか書いていませんので、rescue Errno::EAGAIN しか
書かないかも知れませんが、現在のRubyではErrno::EWOULDBLOCKがraiseされる
ので、rescueされません。その原因は、結局errno.hをgrepしてみるまでわから
ないので、不整合を感じるように思います。
例外処理はチェックの甘い部分だと思うので、不具合が発見されないまま残され
る可能性もありそうです。

一方 Errno::EAGAIN == Errno::EWOULDBLOCK では、エラーメッセージを見て混
乱する可能性はありますが、プログラムは意図通りに動きますし、仕様としても
まだ納得しやすいと思います。

# いっそのこと実体としては全て Errno::E035 のように値に対応させるという
# のも一つの案ですが、デメリットのわりにメリットはあまりないかも。
# (inspectを Errno::E035(EWOULDBLOCK,EAGAIN) のようにする?)

> EAGAIN, EWOULDBLOCK が異なる値のシステムもあるわけだから
> 移植性の高いスクリプト書く場合、結局
> 
>    rescue Errno::EAGAIN, Errno::EWOULDBLOCK
> 
> のようにしないと行けないことに気が付きました(^^;

EWOULDBLOCKが定義されないシステムもある(ありえる)でしょうから、
もうちょっと複雑になりそうです:p

--
MOROHOSHI Akihiko

In This Thread

Prev Next