[#34011] Should --verbose be equal to -v ? — Yugui <yugui@...>

Yuguiです。

15 messages 2008/03/10
[#34012] Re: Should --verbose be equal to -v ? — Yukihiro Matsumoto <matz@...> 2008/03/10

まつもと ゆきひろです

[#34105] rational.rb, complex.rb and mathn.rb — Tadayoshi Funaba <tadf@...>

rational と complex が組み込みになったことで、lib/mathn.rb の意義は薄

29 messages 2008/03/22
[#34106] Re: rational.rb, complex.rb and mathn.rb — Tadayoshi Funaba <tadf@...> 2008/03/22

現時点で rational.rb と complex.rb を残しているのは、それが無難だから

[#34107] Re: rational.rb, complex.rb and mathn.rb — Tadayoshi Funaba <tadf@...> 2008/03/22

で、かなり選択肢を絞った叩き台です。

[#34120] Re: rational.rb, complex.rb and mathn.rb — keiju@... (石塚圭樹) 2008/03/24

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

[#34125] Re: rational.rb, complex.rb and mathn.rb — Shin-ichiro HARA <sinara@...> 2008/03/25

原です。

[#34130] Re: rational.rb, complex.rb and mathn.rb — Tadayoshi Funaba <tadf@...> 2008/03/25

> 私も Complex の組み込みは Rational とは比較にならないくらい、仕様が決め

[#34158] Complex組み込み — Masahiro TANAKA <masa16.tanaka@...>

Complexが組み込みになるそうですが、これはcomplex.rbを踏襲して、

49 messages 2008/03/27
[#34161] Re: Complex組み込み — Shin-ichiro HARA <sinara@...> 2008/03/28

原です。

[#34168] Re: Complex組み込み — Tadayoshi Funaba <tadf@...> 2008/03/28

> 今までの Complex は、complex.rb にほぼ残して、たとえば Rational 成分

[#34186] Re: Complex組み込み — Shin-ichiro HARA <sinara@...> 2008/03/31

原です。

[#34187] Re: Complex組み込み — Tadayoshi Funaba <tadf@...> 2008/03/31

> そうです。Complex が難しい、という話を書いておくと、

[#34193] Re: Complex組み込み — Yukihiro Matsumoto <matz@...> 2008/03/31

まつもと ゆきひろです

[#34203] Re: Complex組み込み — Tadayoshi Funaba <tadf@...> 2008/04/01

> |僕としては、/ 演算子の振舞いについて前向きに検討してほしいです。

[#34215] Re: Complex組み込み — Yukihiro Matsumoto <matz@...> 2008/04/02

まつもと ゆきひろです

[#34166] Re: Complex組み込み — Tadayoshi Funaba <tadf@...> 2008/03/28

> となるようですが、別の実装として、

[ruby-dev:34154] Re: rational.rb, complex.rb and mathn.rb

From: Shin-ichiro HARA <sinara@...>
Date: 2008-03-27 08:12:29 UTC
List: ruby-dev #34154
原です。

>>  (1) (-8)**Rational(1,2) は複素数1.0+1.7320508*i
>>  (2) Math.sqrt(-8) は、例外発生
>>
>> でどうでしょうか。(2) の理由は「伝統の維持」です。(1) は、互換性がない
>> のだけど、多分使っている人は少ないからまあいいか、ということです。
>> やっぱり難しいなあ。
> 
> やはりちぐはぐな感じがしますね。
> 
> ruby では、同じ数値を Rational でも Complex でも表現でき、また、関数形
> 式、メソッド形式、演算子間で違いがあって、さらに mathn もあって、あちこ
> ち分断されているように感じます。

「同じ数値を Rational でも Complex でも表現でき」というところにふなばさ
んの考えがよくあらわれていると思います。対比して極端に言うと「Rational
や Complex に違う数があって、相互に変換ができたりできなかったりする。そ
れでいい。」というのが私の感覚かな。話がふりだしに戻りそうだけど。

しかし、Complex はやっかいです。だって、そもそも Real が作れないのに
Complex が作れるなんて変ですよね。現在の Complex は、ちょっとコンテナ型
というか、Float 成分の Complex だったり、Integer 成分の Complex とかす
るわけで、単純なものとは言い難いですね。しかたがないのですが。

で、現場に戻ると…

> この案を採用したとして、
> 
> Math.sqrt(Rational(1,4)) #=> Rational(1, 2)
> Math.sqrt(4) #=> 2
> 
> のようなことをしたい場合、どういう対応になるんでしょうね。

私は、Math.sqrt の戻り値は Float 固定と考えています。そいう厳密数を返す
関数は isqrt とかいう名前で別に用意するわけです。ruby-math で実装につい
てだいぶ議論したけど、結局本体に取り込むに至りませんでした。私がヘタレ
のせいかも。

In This Thread