Rubyレシピブック第2版

出ました。

Rubyレシピブック 第2版 268の技

Rubyレシピブック 第2版 268の技

あおきさんも書いている通り、今回はあまり大きく変わっていません。あとがきがついたりとかもしてません(新井素子ネタもついてません>誰とははなく)。
「たのしいRuby 第2版」とあわせて読みたい、という方にはおすすめ。本屋で2冊並んでるのを見ましたが、いい感じでした。

:=オペレータ

Rubyに:=を導入する件について。MLに書こうと思っているのですが、まとまらないのでとりあえずメモだけ。

  • 「:=」をどういうときに使えばいいか説明するのが難しそう(特に初心者に)
  • JavaScriptのvarの類推からすると、「とりあえず:=にしとけばいいよ」的になって、何でもかんでも:=がつきまくる恐れがある。それは本意ではないのでは? 結局「=」と「:=」のどっちを推奨したいのか?
  • ブロックの外にある同名の変数を参照できない。参照するためにはrenameして……とかやるくらいなら最初から別名にしとけばいい?
  • 元々の動機が「ブロックにブロックローカルな変数を導入したい」ということなら、ブロックの最初に書けばよいことで、どこでも使える:=を導入するのは強すぎでは?