From: SASADA Koichi Date: 2007-01-23T13:03:23+09:00 Subject: [ruby-dev:30164] Re: := operator  ささだです。 Yukihiro Matsumoto wrote: > | [Ruby] local variables new scoping rule > | http://www.rubyist.net/~matz/20070112.html#p04 > | > |を読んだのですが、|foo; bar| 以外に := としてブロックローカルな変数を宣 > |言する方法を用意する必要性がよくわかりませんでした。 > > たぶん、|foo; bar|はなくなるんじゃないかと。特定の場所でしか > 許されない宣言は個人的にあまり好きじゃないし、醜い気がするし。  同意します。 > | うーん、そうなんですかねぇ。限定された用途のために、:= という記号が増 > |えるほうがめんどくさい(覚えるのが)と思います。 > > 「覚えるのがめんどくさい」はRubyのデザインではあまり重視され > ません。  うーん。せめて var a のほうが、個人的にはいいんですが。Ruby 的にはそっ ちのほうがキモイかな。 > | 例えばこの場合って何が返るんでしょう。JavaScript的には1、C++的には2、 > |大穴は4。 > > 超大穴、エラー、と言いたいところですが、正解は > > 2 > > ですね。しかし、JavaScriptはおかしいよね。  これは納得しました。やっぱり、ブロックローカル変数の「宣言」が何らかの 形で必要になっちゃうってことですよね。 -- // SASADA Koichi at atdot dot net