From: Nobuyoshi Nakada Date: 2008-03-06T12:02:51+09:00 Subject: [ruby-dev:33998] Re: warning about space before argument parentheses なかだです。 At Mon, 3 Mar 2008 14:47:39 +0900, Nobuyoshi Nakada wrote in [ruby-dev:33968]: > > |この警告は1.8.0のときから今の形で出ていますし、そろそろメソッド > > |名とカッコの間にはスペースは置けなくしてもいいんじゃないでしょう > > |か。 > > > > 括弧を置くことは曖昧さを増やす悪いスタイルだとは思いますが、 > > スペースですね。 > > > 文法的に禁止すべきほどだとは思いません。警告のままがちょうど > > いいと思うんですがどうでしょう? > > いかにも引数二つのメソッド呼出のように見える「foo (1), 2」が文法 > エラーにならなくなる、というメリットはあります。 誤解されるような書き方をしてしまったことに気づいたので、訂正しま す。メソッド名とカッコの間にスペースを置くことを文法的に禁止する のではなく、スペースがある場合はメソッドのカッコではなく引数を囲 むカッコとみなすようになるということです。つまりdon't put space...の警告の代わりにinterpreted as grouped expressionが出る ようになります。 $ ruby18 -wce 'foo (1)' -e:1: warning: (...) interpreted as grouped expression Syntax OK $ ruby19 -wce 'foo (1)' -e:1: warning: (...) interpreted as grouped expression Syntax OK $ ruby18 -wce 'self.foo (1)' -e:1: warning: don't put space before argument parentheses Syntax OK $ ruby19 -wce 'self.foo (1)' -e:1: warning: (...) interpreted as grouped expression Syntax OK -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦