『Rubyのしくみ Ruby Under a Microscope』発行
『Rubyのしくみ Ruby Under a Microscope』が11/28に発行されます。
Rubyはプログラマにとって自然な使いやすさを追求していることで知られるプログラミング言語ですが、その使いやすさがどのように実現されているか、不思議に思ったこともあるのではないでしょうか。本書は、プログラミング言語Rubyの処理系がどのように実装されているかを、分かりやすく解説したユニークな本です。
特長としては次のような点が挙げられます。
- 豊富な図で視覚的に説明(図版は270点以上)。
- (参考:原書出版社のサイトで原書第6章の抜粋をダウンロードできます。)
- C言語が得意でなくても大丈夫(Cコードは要所要所で登場するのみ)。
- MRI/CRubyを中心に検討しつつ、JRubyやRubiniusも解説。
- Ruby 2.x/1.9/1.8をカバー。
- 日本語版には、まつもとゆきひろ氏による序文とYARV作者笹田耕一氏による付録を追加掲載。
章目次は次のとおりです。
- はじめに
- 第1章 字句解析と構文解析
- 第2章 コンパイル
- 第3章 Rubyはどのようにコードを実行するか
- 第4章 制御構造とメソッドディスパッチ
- 第5章 オブジェクトとクラス
- 第6章 メソッド探索と定数探索
- 第7章 ハッシュテーブル:Ruby内部の働き者
- 第8章 Lispから借用したアイデア
- 第9章 メタプログラミング
- 第10章 JRuby:JVM上のRuby
- 第11章 Rubinius:Rubyで実装されたRuby
- 第12章 MRI・JRuby・RubiniusにおけるGC
- 付録A さらにそのほかのRuby仮想マシン
盛りだくさんな内容ですが、大まかに分けると3つの部分からなっています。
- 第1-3章では、字句解析・構文解析・コンパイル・実行という、Rubyスクリプトが読み込まれてから実行されるまでの一連の処理がまず説明されています。
- 第4-9章では、オブジェクトシステムやブロックをはじめ、Rubyの興味深い特徴や機能を切り口に、それらが処理系内部でどのように実現されているかが解説されています。
- 第10-12章は、MRIと他の処理系の違いに焦点を当てています。MRI以外の処理系としてはJRubyとRubiniusを取り上げています。
このように、言語処理系内部の構造と動作の解説という歯ごたえのある内容ですが、だからこそ、読み手が挫折せず、興味をもって読み進められるよう工夫がなされています。
本書はもともと、著者のPat Shaughnessy氏が電子書籍として自主出版したものがはじまりでした。それがRubyの内部に興味を持っていた英語圏のRubyユーザの間で評判になり、米国No Starch Pressからあらためて発行されました。
そして、かねてからこの本に注目し、日本語で皆に読んでもらえるようにしたいと考えていた訳者陣の熱意により、このたび翻訳発行されることとなりました。
ともするとブラックボックスとして捉えられがちなRubyインタプリタの中身と仕組みを、機会があれば理解してみたいと思っていた方におすすめの一冊です。
- Pat Shaughnessy著、島田浩二・角谷信太郎訳
- A5判 408ページ
- http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-05065-7
(hmorita)