[#34261] ComplexFloat — "Kenta Murata" <muraken@...>

村田です.

117 messages 2008/04/06
[#34280] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

村田です.

[#34286] Re: ComplexFloat — Nobuyoshi Nakada <nobu@...> 2008/04/10

なかだです。

[#34288] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34290] Re: ComplexFloat — "U.Nakamura" <usa@...> 2008/04/10

こんにちは、なかむら(う)です。

[#34293] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34296] Re: ComplexFloat — "U.Nakamura" <usa@...> 2008/04/10

こんにちは、なかむら(う)です。

[#34298] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34300] Re: ComplexFloat — Tanaka Akira <akr@...> 2008/04/10

In article <761216ce0804100221x67f10f12iab12b0e35b6f50e4@mail.gmail.com>,

[#34301] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34303] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/10

まつもと ゆきひろです

[#34314] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/10

利点としては、拡張ライブラリが書きやすい、ということ。正当化の理由とし

[#34316] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34317] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/10

> 私にはいびつな進化という感じはしません.むしろ,せっかく C で実装できるのに

[#34318] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34322] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/10

まつもと ゆきひろです

[#34328] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/11

むらたです.

[#34331] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/11

まつもと ゆきひろです

[#34340] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/11

むらたです.

[#34341] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/11

まつもと ゆきひろです

[#34362] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34363] Re: ComplexFloat — Tanaka Akira <akr@...> 2008/04/12

In article <761216ce0804120723n16bfbad7qdae90f142978d256@mail.gmail.com>,

[#34367] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34368] Re: ComplexFloat — Tanaka Akira <akr@...> 2008/04/12

In article <761216ce0804121011h6132d58fh4916ecbb29d58690@mail.gmail.com>,

[#34369] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34364] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/12

まつもと ゆきひろです

[#34366] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34386] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/13

まつもと ゆきひろです

[#34415] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/15

むらたです.

[#34439] Re: ComplexFloat — Shin-ichiro HARA <sinara@...> 2008/04/17

原です。

[#34442] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/17

まつもと ゆきひろです

[#34451] Re: ComplexFloat — Shin-ichiro HARA <sinara@...> 2008/04/18

原です。

[#34455] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/18

> 1. ComplexFloat を組込みにし、Complex を標準ライブラリとして提供する。

[#34457] Re: ComplexFloat — Shin-ichiro HARA <sinara@...> 2008/04/20

原です。

[#34458] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/20

> 分かりににくかったですが、これは、ComplexFloat を含めた組込みの数体系が

[#34502] Re: ComplexFloat — sheepman <sh@...> 2008/04/24

こんばんは sheepman です。

[#34601] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/05/07

まつもと ゆきひろです

[#34603] Re: ComplexFloat — keiju@... (石塚圭樹) 2008/05/07

けいじゅ@いしつかです.

[#34614] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/05/08

まつもと ゆきひろです

[#34621] Re: ComplexFloat — keiju@... (石塚圭樹) 2008/05/08

けいじゅ@いしつかです.

[ruby-dev:34473] Re: ComplexFloat

From: Shin-ichiro HARA <sinara@...>
Date: 2008-04-21 10:55:37 UTC
List: ruby-dev #34473
原です。

Tadayoshi Funaba さんは書きました:
>> もう一度少し違う例を挙げると、Complex を導入すると
>>
>>   x.class == y.class かつ x == y だが、x - z != y - z
>>
>> となる例があります。x = Complex(0, 1.6), y = Complex(0, Rational(16, 10)), 
>> z = Complex(0, 1) です。
>>
>> 数値 x の振舞いは x の属するクラスで決まって欲しい、そのようなものが組
>> み込みではより望ましい、のではないでしょうか?
> 
> そうは思いません。まず、言葉の問題かもしれませんが、基本的に (基本的に
> はですが) 振舞いは同じだと考えます。原さんが言われることは、消極的で皮
> 相的な完璧さを求めているだけのような気がします。

同意できません。どこで意見が食い違うんでしょうね。ふなばさんは、Float の
ような「不正確数」と Rational のような「正確数」の性質の違いについて、
過小評価しているんじゃないですかね。

> また、もっぱら浮動小数点数だけつかうのだ、と主張されるならば、そういう
> ことを気にする必要は実際的にありません。

浮動小数点数だけだったらその通りですが、「だけ」ではないので気にするわ
けです。

> 議論中コンテナといわれる方法 (個人的に違和感がありますが) は、Common
> Lisp、Scheme、Squeak、Factor などに見られます。これらにはクラスがない
> ものもありますが、型があり、同様に考えていいと思います。これらは良くな
> いのでしょうか。それとも、ruby に特有の問題があるのでしょうか?

「コンテナ」と呼ぶことについては、私もしっくりきてなくて、便宜的に使っ
ています。Lisp、Scheme、Squeak、Factor の流儀については、よく分かりませ
んが、問題を抱えているのではないでしょうか。Gauche が、正確数としての複
素数を捨てたのは、それを意識してのことではないでしょうか。

> 僕も Complex は、ひとつだけ、というのは賛成です。それは、ruby の大クラ
> ス主義とも合致しています。
> 
> この、ひとつでいい、というのは、
> 
> 「ああ、これは浮動小数点数だから ComplexFloat をつかおう」
> 「おっと、これは、整数だから、Complex だな」
> 
> などというのは無駄である、ということが前提にあったと思います。比較的最
> 近では、OrderedHash についての議論が思い出されます。

整数だから Integer を使い、小数だから Float を使う、というのは自然です
ね。それがそのまま、複素整数だから Complex を使い、複素Float だから、
ComplexFloat を使う、ということになるだけで、無駄も何もないです。

> 僕自身は、当初から Complex も Rational も、もし拡張ライブラリとして採
> 用されれば幸いだ、というくらいの気持で作りましたけど (それは今も変りあ
> りません)、ComplexFloat が組み込みで、おまけとして従来型の Complex を
> 添付する、というのは納得がいきません。

私の感覚では、Complex はおまけではないです。ComplexFloat クラスと、
Complex クラス、どちらか一方のみを選べということなら、Complex です。
Complex の方がレパートリーが広いからです。

> ひとつというのは、本当にひとつであるべきなんで、これは拡張ライブラリだ
> からいい、というのは反対です。最終的に ComplexFloat を組み込むことがあ
> るならば、Complex は不採用にしたほうがいいと思います。そのように決定し
> たら、今の Complex は引き上げるつもりです。必要ならば、当面は石塚さん
> の実装を互換性のために復活させる、という対応でよいと思います。

ComplexFloat を組込みにし、Complex は、石塚さんの complex.rb を使う手は
アリだと思います。しかし、せっかくのふなばさんの成果も無駄にしたくない。

> あるいは、まつもとさんが、決めかねるのであれば、Complex はどちらも当面
> 組み込まない、ということでもいいと思います。
> 
> 長くなりましたが、ComplexFloat を組み込むならば、従来型の Complex は、
> もう必要ない、というべきです。まつもとさんが、そういってくれるなら、僕
> は納得します。

今そこまで考えるのは早すぎますよ。だいたい私の「ComplexFloat は組込みで、
Complex は標準添付で」っていう提案に賛成したり反対したりしている人は今
のところ私とふなばさん以外いないですし、もうすこしうまく説得する例が多
くあれば、ふなばさんの気持ちが変わるかもしれないし、私の方が説得しよう
としていろいろ考えているうちに、こりゃアカンって思ってしまうこともあり
得るし。

まー、ComplexFloat と Complex の2本立てってって、ややこしくてイケてない
かもって感覚もあるんですよ。

In This Thread