From: WATANABE Hirofumi Date: 2003-02-27T17:06:48+09:00 Subject: [ruby-list:37193] Re: puts (4)*2 でエラー わたなべです。 Masahiro Sato writes: > irb(main):042:0> puts ((4)*2) > 8 > nil > > とやるのが一番無難な方法なのだろうと思います。 -wをつけて実行するのがいいと思ったら、irbにはそんなオプショ ンはなかったんですね。しかたないからこんな感じかなあ。 % ruby-1.6.8 -S irb >> $-w = true => true >> puts ((4)*2) (irb):2: warning: puts (...) interpreted as method call 8 => nil と括弧を入れてもwarningになります。間の空白を取ればなにも言 われません。 >> puts((4)*2) 8 => nil つまりputs (x)のようにメソッドと括弧の間に空白を入れるスタイ ル自体あまりお勧めではないわけです。 > perlでやってみると、 > > # perl -e 'print (10-2)/2' > 8 > > のようになります。こちらはエラーが出ないので、 > ややこしい計算だったら間違いに気がつかない恐れが > あります。 % perl -we 'print (10-2)/2' print (...) interpreted as function at -e line 1. Useless use of division (/) in void context at -e line 1. -- わたなべひろふみ