A Day in the Life

2006-10-08

スルー力

http://subtech.g.hatena.ne.jp/otsune/20061008/PackageP

なるほど、マジレスすいません…。酔った勢いにまかせるとマジレスしてることが多い、気がする>俺。

NaN / Infinity / -Infinity

先日の飲み会で NaN ってなんのクラス?という話になったときささださんが即座に Float(たぶん) と答えていてさすがだと思った。じょ、常識ですかガクガク?

ちなみに結果を確認をしようとして IRB で

>> 0.0 / 0
=> NaN
>> NaN
NameError: uninitialized constant NaN

って云われて悲しかった。NaN は inspect の結果なのね。なので

>> (0.0 / 0).class
=> Float

とやらないとダメ、と周りの rubyist に一斉につっこまれたよなんでおなえらそんな詳しいんだ><。Infinity なんかも同じ。

perl で nan / inf 表現って Math::BigFloat の bnan とかを使うのが一般的なんかなー。

追記

use bignum かぁ。どもども。

http://search.cpan.org/~tels/bignum-0.17/lib/bignum.pm

  • inf()

A shortcut to return Math::BigInt->binf(). Usefull because Perl does not always handle bareword inf properly.

  • NaN()

A shortcut to return Math::BigInt->bnan(). Usefull because Perl does not always handle bareword NaN properly.

記事の一覧 >