[#697] ++[Re: dylan [Re: swap values(Re: call by reference)]] —
けいじゅ@SHLジャパンです.
1 message
1996/10/01
[#869] Append Member — Kouki Higuchi <luke@...>
Please let me be a participate.
1 message
1996/10/20
[#895] sleep eternaly on BOW(Re: ruby 0.99.2-961023 available) — Shin-ichiro Hara <sinara@...>
原です。
6 messages
1996/10/24
[#906] [REQ]Get Strings!<3> GETS, SUB — Shin-ichiro Hara <sinara@...>
原です。
5 messages
1996/10/27
[#907] [REQ]Get Strings!<4> SPLIT — Shin-ichiro Hara <sinara@...>
原です。
6 messages
1996/10/27
[#920] bug report(each) — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
8 messages
1996/10/29
[#928] Re: hajimemashite — Itsuro Saito <saito@...>
斎藤@東大電子情報です.
9 messages
1996/10/29
[#938] ruby 0.99.3-961030 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
7 messages
1996/10/30
[#954] Rational — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
23 messages
1996/10/30
[#955] Re: Rational
— matz@... (Yukihiro Matsumoto)
1996/10/30
まつもと ゆきひろです.
[#968] Re: Rational
—
1996/10/31
けいじゅ@SHLジャパンです.
[#970] Re: Rational
— matz@... (Yukihiro Matsumoto)
1996/10/31
まつもと ゆきひろです.
[#956] Re: Rational[coerce(Re: ruby 0.99.3-961030 available) ] — Shin-ichiro Hara <sinara@...>
原です。
4 messages
1996/10/30
[#965] ruby-mode — Yasuo OHBA <jammy@...>
大庭@SHLJapanです.
6 messages
1996/10/31
[ruby-list:954] Rational
From:
keiju@... (Keiju ISHITSUKA)
Date:
1996-10-30 08:49:07 UTC
List:
ruby-list #954
けいじゅ@SHLジャパンです.
今, Rational をNumericのサブクラスとして実装しているところです.
中間報告をします. 3件ほど問題が発生しています.
1. Numeric#abs
ドキュメント上は, absがNumericで定義されているとなっていますが,
q = Rational(-1, 2)
q.abs
を実行すると, undefined ... とメッセージされます.
2. coerce
また, Rational.coerceは定義していません.
q = Rational(-1, 2)
-q
を実行すると (多分)
0 - q
が実行されて, coerceが呼ばれるのですが, 無限ループに陥ります. もともと
がこちらのミス(coerceが定義されていない)なのですが, 定義されていない場
合についてももうちょっと対処して下さいませ.
3. Rational.coerce
を以下の定義にすると.
def coerce other
if other.type == "Float"
return other, Float(self)
else
super
end
end
やはり, -q で無限ループに陥ります. ここでの, super は何を行なうメソッ
ドでしょうか?
ちなみに:
def coerce(other)
if other.kind_of?(Float)
return other, self.to_f
elsif other.kind_of?(Integer)
return Rational(other), self
else
super
end
end
上記のように, Integerの対応を行なえばちゃんと動作しました. あとは,
superをこのまま残しておいて良いかどうか??
__
.........................................石塚 圭樹@SHLジャパン(株)...
------------>アドレス変わりました!! e-mail: keiju@shljapan.co.jp <----