From: Koji Arai Date: 2003-06-23T04:10:13+09:00 Subject: [ruby-dev:20408] Re: 1.8.0 preview3 schedule 新井です。 In message "[ruby-dev:20406] Re: 1.8.0 preview3 schedule" on 22 Jun 2003 21:08:21 +0900, matz@ruby-lang.org (Yukihiro Matsumoto) wrote: > まつもと ゆきひろです > > In message "[ruby-dev:20404] Re: 1.8.0 preview3 schedule" > on 03/06/22, Koji Arai writes: > > |[ruby-dev:20358] で、 > | > || つまり、以前は|a|は解釈として|a,|(引数が一つの時)と|*a|(引数 > || が複数の時)の中間の働きをしていましたが、これを|a,|と同じ解 > || 釈にするための移行措置です。 > | > |ということですが、多重代入とブロック引数は将来解釈が異なるよ > |うになるのでしょうか? > |それとも多重代入も変更され > | > | v = 1,2,3 > | > |は v == 1 になるのでしょうか? > > おそらく解釈が異なるようになります。いっしょにしていた方が覚 > えやすかろうと思っていたのですが、どうもそうではないようなの > で。別の案としては > > v = 1,2,3 > > もエラーにするというものがあります。でも、非互換が過ぎるかなあ。 将来、 def foo yiled 1,2,3 end foo {|a| p a} をエラーにするのもありかなあっと思いました。というのも、この 文脈で、a = 1 となることを意図しているとは考えにくい、どちら かと言えば |*a| の間違いだと思うからです。 # 今回の変更に至るまでの経緯がまったくわかってないのでおかし # なこと言ってるかもしれませんが。 # 実際の変更は 1.8.1 より、1.9 や 2.0 が良いと個人的には思います。 -- 新井康司 (Koji Arai)