初めてのRuby

Yuguiさんに初めてのRubyをもらいました。
「初めてのRuby」という言葉はあいまいで「プログラミングが初めての人」向けなのか「プログラミングはすでに経験してて、Rubyはまだ経験していない人」向けなのかがぶれがちですが、この本は明確に後者だと断言してあります。なるほど、つまりすでにPythonを使っている僕みたいなのがターゲットというわけですね。これはいい物をもらったw


すべての章に「本章のまとめ」と「本章で扱っていないこと」の節があるのがすごい。あとRuby1.8と1.9の違いがしっかり書かれています。今まで1.8と1.9の違いがよくわからなかったのですけど、ようするにPython3000に相当するような「がらっと変えてよりよくする!」のがRuby2.0で、Ruby1.9はそれに向けての飛び石なんですね。Python3000bみたいなものか。


あと囲みコラムとか罠マークのワンポイントがとても面白いです。他の言語からRubyに引っ越してきたときにはまるような内容がいろいろ挙げられています。例えば最近86チャットで盛り上がっていた下のような現象とか。

irb(main):007:0> (10 - 1
irb(main):008:1> - 2 - 3)
=> -5

「改行文字はセミコロンと同様に分の終わりとして認識されます。このため空白やタブのように好きなところに挿入することはできません。」だそうな。

ちなみにPythonで同じことをやるとこうなります。

>>> (10 - 1
    - 2 - 3)
4

Rubyのこの挙動はようするにこういうことですね。理解してみれば、なるほど妥当な挙動です。

irb(main):010:0> (10 - 1 - 2 - 3)
=> 4
irb(main):011:0> (10 - 1; - 2 - 3)
=> -5

話がそれた。他の言語に慣れた人が新しい言語を学ぶときは「こうやったらこうなるだろう」という思いこみをしがちです。はまるまえにこういう落とし穴の例に目を通しておくのは重要かも知れませんね。

最後にひとつ。「Rubyの黒魔術」の章ww
TODO: Rubyの黒魔術を使って何か変なことをする。

          • -

追記:大事なことを書き忘れましたが、翻訳じゃなくて書き下ろしです!