[#7284] font-lock in ruby-mode.el — Shugo Maeda <shugo@...>
前田です。
7 messages
1999/07/06
[#7291] dualstack-httpd.rb — gotoken@... (GOTO Kentaro)
itojunさん作 sample/dualstack-httpd.rb の応答に些細な間違い
5 messages
1999/07/08
[#7300] resolver を呼ばない UDPsocket#recvfrom — Toshihiko SHIMOKAWA / 下川俊彦 <toshi@...>
あんまり ruby-dev な話でも無いのですが、ちょっとした機能拡張の提案なので、
12 messages
1999/07/12
[#7321] Re: resolver を呼ばない UDPsocket#recvfrom
— Toshihiko SHIMOKAWA / 下川俊彦 <toshi@...>
1999/07/15
From: Toshihiko SHIMOKAWA / 下川俊彦 <toshi@csce.kyushu-u.ac.jp>
[#7367] Re: resolver を呼ばない UDPsocket#recvfrom
— matz@... (Yukihiro Matsumoto)
1999/07/19
まつもと ゆきひろです
[#7301] Re: mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
11 messages
1999/07/13
[#7302] Re: mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1
— Katsuyuki Komatsu <komatsu@...>
1999/07/13
小松です。
[#7313] Ruby 1.3.5 — Yukihiro Matsumoto <matz@...>
Ruby 1.3.5 is out, check out:
59 messages
1999/07/15
[#7314] Re: Ruby 1.3.5
— "NAKAMURA, Hiroshi" <nakahiro@...>
1999/07/15
なひです.
[#7315] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/15
まつもと ゆきひろです
[#7318] Re: Ruby 1.3.5
— WATANABE Hirofumi <watanabe@...>
1999/07/15
わたなべです.
[#7326] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/15
青山です。
[#7331] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/16
まつもと ゆきひろです
[#7340] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/16
青山です。
[#7355] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/17
青山です。
[#7368] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/19
まつもと ゆきひろです
[#7373] Re: Ruby 1.3.5
— Shin-ichiro Hara <sinara@...>
1999/07/19
原です。
[#7374] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/19
まつもと ゆきひろです
[#7382] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/19
青山です。
[#7386] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/21
まつもと ゆきひろです
[#7388] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/21
青山です。
[#7389] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/21
青山です。
[#7391] Re: Ruby 1.3.5
— Shin-ichiro Hara <sinara@...>
1999/07/21
原です。
[#7392] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/21
まつもと ゆきひろです
[#7393] Re: Ruby 1.3.5
— matz@... (Yukihiro Matsumoto)
1999/07/21
まつもと ゆきひろです
[#7394] Re: Ruby 1.3.5
— Wakou Aoyama <wakou@...>
1999/07/21
青山です。
[#7327] [PATCH] ext/extmk.rb.in, instruby.rb, lib/mkmf.rb — Katsuyuki Komatsu <komatsu@...>
小松です.
5 messages
1999/07/16
[#7347] AC_OBJEXT — Katsuyuki Komatsu <komatsu@...>
小松です。
10 messages
1999/07/16
[#7353] const assign — Minero Aoki <aamine@...>
あおきです。
7 messages
1999/07/16
[#7387] [PATCH]extconf.rb, tcltklib.c, and rubytest.rb for NetBSD — Ryo HAYASAKA <hayasaka@...21.u-aizu.ac.jp>
早坂@会津大学です。
10 messages
1999/07/21
[#7401] Re: [PATCH]extconf.rb, tcltklib.c, and rubytest.rb for NetBSD
— matz@... (Yukihiro Matsumoto)
1999/07/23
まつもと ゆきひろです
[#7403] Re: [PATCH]extconf.rb, tcltklib.c, and rubytest.rb for NetBSD
— Ryo HAYASAKA <hayasaka@...21.u-aizu.ac.jp>
1999/07/23
早坂@会津大学です。
[#7404] Re: [PATCH]extconf.rb, tcltklib.c, and rubytest.rb for NetBSD
— matz@... (Yukihiro Matsumoto)
1999/07/23
まつもと ゆきひろです
[#7419] File#expand_path ignore drive letter on mswin32 — Katsuyuki Komatsu <komatsu@...>
小松です。
8 messages
1999/07/26
[#7421] Re: File#expand_path ignore drive letter on mswin32
— KIMURA Koichi <kimura@...>
1999/07/26
[#7422] Re: File#expand_path ignore drive letter on mswin32
— WATANABE Hirofumi <watanabe@...>
1999/07/26
わたなべです.
[#7428] [PATCH] tools.rb — WATANABE Hirofumi <watanabe@...>
わたなべです.
8 messages
1999/07/27
[#7435] Re: [PATCH] tools.rb
— matz@... (Yukihiro Matsumoto)
1999/07/27
まつもと ゆきひろです
[#7444] dualstack-*.rb on mswin32 — Katsuyuki Komatsu <komatsu@...>
小松です。
7 messages
1999/07/27
[#7466] [PATCH] for djgpp — WATANABE Hirofumi <watanabe@...>
わたなべです.
21 messages
1999/07/29
[#7467] Re: [PATCH] for djgpp
— Katsuyuki Komatsu <komatsu@...>
1999/07/29
小松です。
[#7549] Re: [PATCH] for djgpp
— okabe katsuyuki <hgc02147@...>
1999/08/05
binsuffixを導入した岡部です(^^;
[#7550] Re: [PATCH] for djgpp
— Katsuyuki Komatsu <komatsu@...>
1999/08/06
小松です。
[#7557] Re: [PATCH] for djgpp
— okabe katsuyuki <hgc02147@...>
1999/08/07
岡部です。
[#7573] Re: [PATCH] for djgpp
— EGUCHI Osamu <eguchi@...>
1999/08/08
えぐち@エスアンドイー です。
[#7598] Re: [PATCH] for djgpp
— okabe katsuyuki <hgc02147@...>
1999/08/10
岡部です。
[#7471] Range#each — WATANABE Hirofumi <watanabe@...>
わたなべです.
7 messages
1999/07/29
[#7501] [PATCH] mswin32 tcltklib for Tcl/Tk 8.0jp — Katsuyuki Komatsu <komatsu@...>
小松です。
5 messages
1999/07/30
[#7503] [PATCH] find_library() — Katsuyuki Komatsu <komatsu@...>
小松です。
9 messages
1999/07/30
[#7507] Re: [PATCH] find_library()
— matz@... (Yukihiro Matsumoto)
1999/07/30
まつもと ゆきひろです
[#7517] Re: [PATCH] find_library()
— Katsuyuki Komatsu <komatsu@...>
1999/08/01
小松です。
[#7529] [PATCH] for mswin32 final (Re: [PATCH] find_library())
— Katsuyuki Komatsu <komatsu@...>
1999/08/02
小松です。
[#7508] [BUG?] install failed — Yasuhiro Fukuma <yasuf@...>
福間%port作成中@福岡 です。
7 messages
1999/07/30
[ruby-dev:7395] Re: Ruby 1.3.5
From:
Shin-ichiro Hara <sinara@...>
Date:
1999-07-22 09:04:50 UTC
List:
ruby-dev #7395
原です。
|Wed, Jul 21, 1999 at 05:57:28PM +0900 において
|Yukihiro Matsumoto さん曰く:
|
|> まず第1にストリームポインタが末尾にあるとき、これを
|>
|> * EOFとみなす
|> * EOFとみなさない
|>
|> という点があります。原さんは「みなさない」方が単純で良いので
|> はないかということですね。私はこちらにはあまりこだわりはあり
|> ませんが、「みなす」方がstdioの設計になじむようには思います。
あれ?私は常に「みなす」方を推していたんですが、、、
でも、"eof(3)" の挙動を考えてとちょっと考え直しました。(^^;
In message "[ruby-dev:7394] Re: Ruby 1.3.5"
on 99/07/21, Wakou Aoyama <wakou@fsinet.or.jp> writes:
|
|青山です。
|この事から、ファイル以外も扱う IO クラスの機能としては、ストリームポイ
|ンタによる EOF の判定は行うべきではなく、それが末尾と思われる位置(?)に
|あっても、やはり EOF とはみなさない方が良いのではないかと思われます。
これに賛成!(^^;; と、いうか EOF に達しているけど、eof? は false
であることを許す、といったらいいのかな。(つまり必ずしも eof?
は EOF にポインタが来ていることを表さない。)EOF という言葉が
いろんな意味で使われてごちゃごちゃになってますね、、、
すなわち、eof? は
直前の1バイト以上の読み込みで読み込み終了になった場合 ture、
そうでないとき false。
直前に1バイト以上の読み込みをしてない場合は不定(か true)。
みたいに正式に定義してしまうのが良い、と思うようになりました。
したがって、いきなり iof? は良くない:
while !io.eof?
s.concat io.read(1024)
end
というコードはあまり勧められない。正しいのは
loop do
s.concat io.read(1024)
break if io.eof?
end
である。と、いうことになりますか。つまり、
|そして、[ruby-dev:7388] のように、ファイルサイズが 0 の場合でも、
|長さが 0 より大きな read(n) を行うまでは EOF を返しません。
と、いうことです。
|さらに、EOF を返すのは、2度目という基準ではなく、0 よりも大きな長さの
|read(n) を行った後となっています。read(0) は何度行っても EOF の判定に
|影響しません。これは、 read(0) はファイルポインタを動かさないとみなし
|ているのでしょう。
これも同意します。Ruby でも read(0) は eof? に対しても全く影響を
与えないことにしたらいいと思います。
さて、read(0) の返り値についてですが、私は
io.read(0) は io の状態にかかわらず常に nil を返す
を提案します。これは私の最初の提案なんだけど、理由はちょっと変わって
"read(2)" では read(,,0) の返り値は 0 としている
からです。
これでいえば、0バイトファイルは read(0) は nil だけど eof? は
false なわけです。(どちらを何回やっても。)
さらにこの際、「"read(2)" が 0 を返す場合は Ruby の read(n) も nil
を返す」ことにしちまったらどうでしょう。
で、これで結果がどうなるか、 差分を #=> の後に書きます。
|$ /usr/src/ruby/ruby -e 'io = open("0"); p io.stat.size
|p io.eof?
|p io.read(1)
|p io.eof?
|p io.read(1)
|'
|0
|false
"" #=> nil
|true
|nil
|
|$ /usr/src/ruby/ruby -e 'io = open("0"); p io.stat.size
|p io.eof?
|p io.read(1)
|p io.eof?
|p io.read(0)
|'
|0
|false
"" #=> nil
|true
|nil
|
|$ /usr/src/ruby/ruby -e 'io = open("0"); p io.stat.size
|p io.eof?
|p io.read(0)
|p io.eof?
|p io.read(0)
|'
|0
|false
"" #=> nil
|false
"" #=> nil
|
|$ /usr/src/ruby/ruby -e 'io = open("0"); p io.stat.size
|p io.eof?
|p io.read(0)
|p io.eof?
|p io.read(1)
|p io.eof?
|'
|0
|false
"" #=> nil
|false
"" #=> nil
|true
一方、残る問題 read() ですが、0バイトファイルに read() を2回
したとき、
(1) "", ""
(2) "", nil
のどっちにするかですね。つまり
(1a) read() は read(n) と全く違うものと思う
(2a) read() は read(n) と類似と思う
の違いです。私は (1a) を推しています。0バイトファイルに対して
1回目の read() が "" であるのに read(0) は nil なので、read()
と read(n) が類似とはいえないから、というのが一つの論拠です。