今日、アキバにいったら、調子に乗ってこんな本を買ってしまいました。
ふつうのコンパイラをつくろう 言語処理系をつくりながら学ぶコンパイルと実行環境の仕組み
- 作者: 青木峰郎
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2009/07/24
- メディア: 単行本
- 購入: 25人 クリック: 387回
- この商品を含むブログ (46件) を見る
コンパイラかー、うーん作ってみてもよいかな。一生のうち1回なら言語のひとつぐらい作っていてもよいか。。。あ、いや、そこまでしなくてもテキストを解析するような字句解析や構文解析は知っているとよいことがあるかも知れない。
ちょうどid:ashigeruからLL(k)のパーサとはってことで勉強会に参加していたので、勢いで買ってみた。手のひらサイズなのに600ページ超え超大作というのは間違いないw読み応えありそうw
この書籍ではパーサジェネレータとしてJavaCCを使ってLinux/x86ターゲットのバイナリをコンパイルできるCb言語*1のコンパイラを実装します。目次の後半は、アセンブリ言語や関数呼び出しや変数、スタックフレームとかハードウェアにより近い分野のキーワードであふれているが、前半のパーサで構文を解析して抽象構文木(AST)を作るところは勉強会で学んだ知識で読めそう。
自分もJavaCCを使ってスクリプト言語的な何かを実装してみようかなと。