プログラミング言語の「型」の定番書「Types and Programming Languages」(通称 TAPL、Benjamin C. Pierce 著) の邦訳書が発売されると聞いて、首を長くして待っていたがようやく先日書店で見つけたので即購入。書名は「型システム入門 プログラミング言語と型の理論」。訳者陣は豪華で、住井英二郎 監訳、遠藤侑介・酒井政裕・今井敬吾・黒木裕介・今井宜洋・才川隆文・今井健男 共訳とあり、力の入り具合がよくわかる。実際、原著(英文)はなかなか理解しにくい(技術的と言うよりは文芸的に)ので、わかった気になっている方も含めて本書を手にする価値は十分にある。
では、いつものように目次から概要を大まかに眺めてみよう。
第1章 はじめに
第2章 数学的準備
第Ⅰ部 型無しの計算体系
第3章 型無し算術式
第4章 算術式のML実装
第5章 型無しラムダ計算
第6章 項の名無し表現
第7章 ラムダ計算のML実装
第Ⅱ部 単純型
第8章 型付き算術式
第9章 単純型付きラムダ計算
第10章 単純型のML実装
第11章 単純な拡張
第12章 正規化
第13章 参照
第14章 例外
第Ⅲ部 部分型付け
第15章 部分型付け
第16章 部分型付けのメタ理論
第17章 部分型付けのML実装
第18章 事例:命令的オブジェクト
第19章 事例:Featherweight Java
第Ⅳ部 再帰型
第20章 再帰型
第21章 再帰型のメタ理論
第Ⅴ部 多相性
第22章 型再構築
第23章 全称型
第24章 存在型
第25章 System FのML実装
第26章 有界量化
第27章 事例:命令的オブジェクト再考
第28章 有界量化のメタ理論
第Ⅵ部 高階の型システム
第29章 型演算子とカインド
第30章 高階多相
第31章 高階部分型付け
第32章 事例:純粋関数的オブジェクト
関数型プログラミング言語に親しんでいながら聞いたことのない単語があるとすれば、それは英語カタカナ語が邦訳されている可能性が高い。とはいえ、本書には索引とは別に訳語集が掲載されており、このあたりは「慣れ」が必要となるが本書を読み進めていくうちに解決していくことだろう。
さて、本書についてはジュンク堂池袋本店で先日(19日)、訳者たちによるトークセッションが開催されたのだが、残念ながら年度末で平日というのはいくら夜19時30分開催といっても無理があった(苦笑)。なので、残念ながら参加はかなわなかったが、こういう機会はなかなかないと思うので、今度は年度末とか決算前とかを避けていただければありがたいとしつつ、今回はここまで。
コメント