Bug #914
closedInteger#upto(NaN)
Description
=begin
upto(NaN) や downto(NaN) で実質的に無限ループになるようで面白いのですが、
これは意図した動作といえるのでしょうか。
=end
Updated by yugui (Yuki Sonoda) almost 16 years ago
- Category set to core
- Assignee set to matz (Yukihiro Matsumoto)
- Target version set to 1.9.1 Release Candidate
=begin
=end
Updated by matz (Yukihiro Matsumoto) almost 16 years ago
=begin
まつもと ゆきひろです
In message "Re: [ruby-dev:37525] [Bug #914] Integer#upto(NaN)"
on Sun, 21 Dec 2008 16:04:10 +0900, tadayoshi funaba redmine@ruby-lang.org writes:
|upto(NaN) や downto(NaN) で実質的に無限ループになるようで面白いのですが、
|これは意図した動作といえるのでしょうか。
NaNはすべての比較に対して偽を返しますから、それに基づくと意
図した動作と言えるのではないでしょうか。
別案としてはNaNを含む比較を例外にするという方法もありますが、
かなり挙動が違うので躊躇します。
=end
Updated by matz (Yukihiro Matsumoto) almost 16 years ago
- Status changed from Open to Rejected
=begin
開発ミーティングで直接話しましたが、未来で「超実数(Yugui談)」とかについて考える気があるそうなので、現時点では放置とします。
超実数と言われても私には何がなんだか。
=end
Updated by tadf (tadayoshi funaba) almost 16 years ago
=begin
|upto(NaN) や downto(NaN) で実質的に無限ループになるようで面白いのですが、
|これは意図した動作といえるのでしょうか。NaNはすべての比較に対して偽を返しますから、それに基づくと意
図した動作と言えるのではないでしょうか。
それは仕様でなくて実装の話ですよね。別の実装であれば、逆に一度も回らな
かったかもしれないですよね。実際、step(NaN) はそのように見えます。
現時点では結果は未定義でもいいのかもしれませんけど。
=end
Updated by matz (Yukihiro Matsumoto) almost 16 years ago
=begin
まつもと ゆきひろです
In message "Re: [ruby-dev:37549] Re: [Bug #914] Integer#upto(NaN)"
on Mon, 22 Dec 2008 21:11:41 +0900, Tadayoshi Funaba tadf@dotrb.org writes:
|> NaNはすべての比較に対して偽を返しますから、それに基づくと意
|> 図した動作と言えるのではないでしょうか。
|
|それは仕様でなくて実装の話ですよね。別の実装であれば、逆に一度も回らな
|かったかもしれないですよね。実際、step(NaN) はそのように見えます。
|現時点では結果は未定義でもいいのかもしれませんけど。
仕様という観点からは未定義ですね。いずれにしても今回は手をつ
けませんので、バグとしてはrejectの方向で。
=end