C++の生みの親Bjarne Stroustrup本人によるC++言語の進化・発展の回顧録。
Stroustrupが、何を重要と考え、どのように言語仕様を決定してきたか、様々なエピソードを交えて解説している。
第4章のC++ Language Design Rulesに書かれているC++の設計思想を読むと、C++言語が何故現在のような仕様になっているのか、C++が提供している各機能(テンプレート、仮想関数、etc)の理解の助けになる。
設計思想の1つ"Provide comprehensive support for each supported style"に従い、C++は複数のプログラミング・パラダイムをサポートできる奥の深い言語になっている。お陰でプログラマー(C++言語のユーザ&学習者)にとっては、とてもChallengingなのだけど。