内容説明
本書は、プログラミングやコンピュータに興味を持つ者が、コンパイラの原理と構造、さらにその開発方法を基礎から理解するためのテキストである。コンパイラの理解は、コンピュータの原理やプログラムの実行のしくみを理解する基礎である。そこで本書では、チューリングらによって確立された計算可能性の理論と万能計算機の構築方法を基礎として、コンパイラを含むプログラミング言語処理系の構築原理とその構造を解説する。これらの理解を基に、コンパイラ実現のための主要な基盤技術を、その原理とその背後にある考え方を含め習得することを目標とする。この考え方を理解することができれば、従来難解と受け止められているLR構文解析や多相型の型推論などの技術も見通し良く習得できる。これらのコンパイラの原理と構造の理解に加えて、先端的言語コンパイラの開発方法を習得するために、実際に実行可能なインタープリタと抽象機械へのコンパイラを開発する。高階の関数や多相型型推論などの先端機能を含むML言語の小さなサブセットCoreMLを対象とし、ML言語の一つである「SML#」を用いてその処理系を開発する。これらを学び直したいエンジニアや、コンピュータやプログラミングに興味を持つ学部学生に最適な一冊である。
感想・レビュー
※以下の感想・レビューは、株式会社ブックウォーカーの提供する「読書メーター」によるものです。
Q
0
SML#という関数型言語でCoreMLと呼ぶ小さな仕様の型推論をそなえるプログラミング言語を設計してSECDという抽象機械で動くようにコンパイルする本。たった185ページの本で、これで型推論について概要を理解できるならなんてお得なんだと思い手に取った。結論としてこのボリュームで理解できるほど型推論の分野は簡単なものではなかった。本書は半分のページを割いて構文解析まで説明しているがクローズアップすべきなのはそこではないのではないだろうか?あまりの説明の簡潔さに「型の単一化」以降まったく頭に入ってこなかった。2023/04/16