From: TAKAHASHI Hitoshi Date: 2008-12-02T21:35:17+09:00 Subject: [ruby-list:45671] Re: 複数行にわたる式の評価 高橋です。 On Tue, Dec 02, 2008 at 06:02:48PM +0900, Yukihiro Matsumoto wrote: > |どちらも、最初の行は演算子 '*' で終わっているので式の途中、 > |2行目以降もカッコ '(' に対応する閉じカッコ ')' がないので式の途中 > |であると解釈されると期待していました。 > > 後半の仮定が誤りです。括弧の中で改行があるとそれは独立した式 > とみなされます。括弧の中でも改行はセミコロンを置いたのと同じ > 意味になります。 なるほど、括弧の中が3つの独立した式と解釈され、 それがたまたま単項+演算子を含む正しい式だったのでエラーにならずに 括弧内の最後の式の結果である4が括弧の値として返されたのですね。 ためしに括弧内の '+' を '*' にすると x = 10 * (1 * 2 #=> この行でエラーになりました。 * 4) よく分かりました。 御説明下さったさく樣、まつもと様、 どうもありがとうございました。 -- TAKAHASHI Hitoshi Institute of Particle and Nuclear Studies, KEK E-mail: hitoshi.takahashi@kek.jp, thitoshi@post.kek.jp URL: http://www-ps.kek.jp/thitoshi/index.html