From: matz@... (Yukihiro Matsumoto) Date: 2003-03-28T17:31:52+09:00 Subject: [ruby-dev:19931] Re: まつもと ゆきひろです In message "[ruby-dev:19924] Re:" on 03/03/28, Akio Takenaka writes: |>Rubyのレベルで、sqrt()は引数の範囲をチェックしていて、 |>log(),log10()はチェックしていないのは、 |>どちらかにあわせたほうが、良くはないでしょうか? |K.Kosako:[ruby-dev:12402] Re: NaN, Infinity (Bug?) より | |と思いました。 |具体的には、 | $ruby -e 'p Math.sqrt(-1)' | -e:1:in `sqrt': square root for negative number (ArgumentError) | from -e:1 | |に対し | $ruby -e 'p Math.log(-1)' | NaN | | $ruby -e 'p Math.log(0)' | -Infinity | |となるのですが……。 |初心者として、あまり哲学的なことを言える立場ではないと思いますが、 |定義域を外れた引数は、やはりArgumentErrorを出す方が自然かと思います。 1.8ではErrno::EDOM例外が発生します。