[#44586] [Ruby 1.9 - Bug #5423][Open] readlineの入力待機中に端末のウィンドウサイズ変更すると入力内容が乱れる — Takuto Matsuu <matsuu@...>

8 messages 2011/10/08

[#44589] [Ruby 1.9 - Bug #5429][Open] 64ビットなFreeBSDのioctlでビット31が1なリクエストの時の不具合 — Makoto Kishimoto <redmine@...>

21 messages 2011/10/09

[#44604] Ruby 2.0 release plan — "NARUSE, Yui" <naruse@...>

ささださんが既にいくつか 2.0 関連のメールを投げていらっしゃいますが、

75 messages 2011/10/18
[#44607] Re: Ruby 2.0 release plan — Yukihiro Matsumoto <matz@...> 2011/10/18

まつもと ゆきひろです

[#44618] Re: Ruby 2.0 release plan — "NARUSE, Yui" <naruse@...> 2011/10/18

(2011/10/18 16:15), Yukihiro Matsumoto wrote:

[#44619] Re: Ruby 2.0 release plan — Yukihiro Matsumoto <matz@...> 2011/10/18

まつもと ゆきひろです

[#44627] Re: Ruby 2.0 release plan — Urabe Shyouhei <shyouhei@...> 2011/10/19

On 10/18/2011 10:16 PM, Yukihiro Matsumoto wrote:

[#44629] Re: Ruby 2.0 release plan — Yukihiro Matsumoto <matz@...> 2011/10/19

まつもと ゆきひろです

[#44631] Re: Ruby 2.0 release plan — Urabe Shyouhei <shyouhei@...> 2011/10/19

たとえば2.0の次のバージョン番号はどうしますか?

[#44633] Re: Ruby 2.0 release plan — "NARUSE, Yui" <naruse@...> 2011/10/20

2011年10月20日3:31 Urabe Shyouhei <[email protected]>:

[#44612] Re: Ruby 2.0 release plan — Yusuke Endoh <mame@...> 2011/10/18

遠藤です。

[#44707] [ruby-trunk - Feature #5512][Open] Integer#/ の改訂 — tadayoshi funaba <redmine@...>

13 messages 2011/10/30

[#44719] [ruby-trunk - Feature #5520][Open] Numeric#exact?、Numeric#inexact? の追加 — tadayoshi funaba <redmine@...>

13 messages 2011/10/31

[ruby-dev:44708] [ruby-trunk - Feature #5513][Open] Numeric へ述語語の追加

From: tadayoshi funaba <redmine@...>
Date: 2011-10-30 08:23:56 UTC
List: ruby-dev #44708
Issue #5513 has been reported by tadayoshi funaba.

----------------------------------------
Feature #5513: Numeric へ述語語の追加
http://redmine.ruby-lang.org/issues/5513

Author: tadayoshi funaba
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 2.0


現在の Numeric では、その表現の特徴について問合せる基本的な語が不足して
おり、プログラミングにおいて総称性の確保が難しくなっています。いくつか
の述語を追加することで、未知への数値表現への備えが出来、協調して働く基
盤が整うと思われます。

具体的には以下の述語を追加する事を提案します。

Numeric#rational?、Numeric#complex?、Numeric#float?
Numeric#exact?、Numeric#inexact?
Numeric#finite?、Numeric#infinite?、Numeric#nan?
Numeric#positive?、Numeric#negative?

Ruby においては、クラス階層はほぼ実装の為の便宜的なものですが、実際には
プログラミングにおいて、それがどのクラスであるのかを手掛りにしている事
も多いです。しかし、それは正しいやり方になりません。例外的に、
Numeric#real? と Numeric#integer? は既に用意されています。

Ruby では、Scheme におけるような厳密数と非厳密数の区別がありません。こ
のため総称性の確保が困難になっています。その為、現在の Complex の実装な
ども真っ当なやり方とは言えない部分があります。

Ruby には既に Float#finite? などがありますが、実際には、BigDecimal を見
ればわかるように、これは Numeric にあるべきものだったと思います。

Numeric の中には負の零を表現できるものもあります。そういった区別も含め
て、正負を区別する必要がある場合もあるでしょうから、簡単に区別が出来る
ようなっている事は意味があると思います。

かつて数などはひとつだけあればいいのだ、と言った人もいましたが、それは
現実的でなく、実際に Ruby の数はそのようになっていません。そうではなく、
複数ある表現を使いわけてひとつの系としてうまく働くようにするしかないの
だろうから、その為には、このようなものが必要であると思います。




-- 
http://redmine.ruby-lang.org

In This Thread

Prev Next