From: EGUCHI Osamu Date: 1997-09-17T13:21:25+09:00 Subject: [ruby-list:4360] Mistake in turorial ??? えぐち@エスアンドイー です。 http://www.netlab.co.jp/ruby/tutorial/ で勉強をはじめました。 一通り例で示されているプログラムを実行してみましたが、2箇所ほど 気づいた点があります。 (1) πの計算 で aptiva0.eguchi:41% ruby -e 'print 4*atan2(1,1), "\n"' -e:1: NameError: undefined method `atan2' for main(Object) でした。 aptiva0.eguchi:42% ruby -e 'print 4*Math::atan2(1,1), "\n"' 3.14159 とする必要があるようです。 (2) 手元のrubyでthreadが使えるかどうか調べる... で aptiva0.eguchi:43% ruby -le 'print defined?(Thread)' constant となり class-const ではありませんでした。 # まだ理解が十分でない(というか入り口をうろうろしてる)ので # まったく見当はづれかも知れませんが、その時はご容赦を ^^; Math くらす をもう少し深くを見ようと eval.rb で ruby> Math::atan2(1,1) 0.785398 ruby> Math.atan2(1,1) 0.785398 ruby> Math::PI 3.14159 ruby> Math::PI() ERR: undefined method `PI' for Math(Module) ruby> Math.PI ERR: undefined method `PI' for Math(Module) ruby> となるんですね、 『Math::PIはあくまで定数で、 引数なしの定数を返すメソド *ぢゃない*』 ということですね。 たしかに Math::PI() は気持ち悪いですね (^^) チュートリアルの次はどこに読み進んでいくのがお勧めでしょうか?