本書は、大学の講義用に編集されたプログラミングの解説書だ。全体は3部構成になっており、第1部ではプログラムの基礎知識、第2部からは実際の言語を題材にした諸概念の解説を行っている。ここではCとPascalによる命令型あるいはオブジェクト指向型のプログラミングの概念を、関数型のプログラミングをScheme(Lispの方言)とStandard MLで、論理型のプログラミングをPrologで、最後に並行プログラミングにAdaを用いて解説している。このように書くと多くの言語の知識が必要かと思われるかもしれないが、概念を解説する題材として各言語を用いているだけで、あまり正確な知識は必要ではないし、ステートメントの表記は大きく違わないため、さほど違和感はないだろう。もちろん各言語の特殊な部分についてはきちんと解説している。
第3部では言語記述として、定義コンパイラ、ラムダ計算などの話題を解説している。広範なプログラミング概念の解説と代表的なルーチン・アルゴリズムの説明は、アカデミックなプログラミングの概念を学ぶうえで非常に有用である。例題も充実しており、大学の講義などで使うのに最適のつくりになっている。
流行の言語を追っていくことも重要なことかもしれないが、プログラミング言語についてより根源的な部分を学ぶことができれば、新しい言語が登場してきてもとまどうことは少ない。プログラミング言語のアカデミックな部分を学びたい人や、大学での講義教材を探している人におすすめ。(斎藤牧人)