レヴュー: 『C++の設計と進化』



諸元

著者
Bjarne Stroustrup
監修
επιστημη
飜譯
岩谷宏
發行
ソフトバンクパブリッシング 2005年
購入日
平成17年1月22日

C++といふプログラミング言語が、どのやうな背景から設計され、如何な思想の下に言語を擴張させてきたのかを、C++の産みの親であるProf. Bjarne Stroustrupが著した一册。

C++については、その言語規模の大きさが屡々酷評されてゐる。しかし、その大きさこそ、C++の「強み」であらうと評者は考へてゐる。C++より後の言語、例へばJavaは、C++の持つ強力な言語機能を繼承しつつ、兩刃の劍となり得る要素を削ることで、安全で一貫性のある言語、否、多くは言語を含んだプログラム開發・實行環境を提供してゐる。C++自身が何故その道を選ばなかつたか。それは、本書で言及されてゐるやうに、C++を汎用言語たらしめる爲、といふことに歸着するだらう。汎用である以上、言語上の制約を設けて、出來ないことをつくることは許されまい。C++、或はCの機能の中で、危險とされてゐる、他の言語よりも自由なポインタは、しかし、他の言語ではそもそも書くことの出來ない低レベル操作を記述するためには必要な代物である。書き出すときりがないし、本稿の目的でもないので、これ以上はC++そのものについての評價はさておくことにする。

本書は、C++の設計について述べたものである。一般的にプログラミング言語を設計することについて述べてはゐない。また、他の言語との比較も避けられてゐる。

かく言ふと、本書はC++について興味のある者にしか用のない書物であるやうに思へるが、しかし、評者はさうではないと思ふ。總まとめ的、抽象的な言語設計の理論を讀んだだけでは、實際に役に立つプログラミング言語の設計といふことを學ぶには覺束ないであらう。本書は、C++といふ一つの言語についてではあるが、設計に當たつての思想や、實際の設計の過程について、詳細に述べてゐる。C++をどのやうに評價するにせよ、實際に使用され、役に立つてゐる言語が、如何なる思想の下で、如何なる過程を經て、設計され擴張されて來たかをつぶさに見ることは、プログラミング言語といふものに興味を持つ者にとつて、非常に有用であると思ふ。プログラミング言語について、そのスローガン的なものや、設計・實裝についての基本姿勢といふものが、アナウンスされることは多い。例へば、Javaの、write once, run anywhere.などが端的な例である。しかし、基本的な立ち位置に留まらず、詳細な過程を披瀝したものは、稀有ではないか。唯一、ではないと思ひたいが、實際のところ、他に本書のやうに克明にプログラミング言語の設計過程を纏めたものを讀んだことはないのである。

最後に、日本語版に於いては、Prof. Bjarne Stroustrupにより一章が書き下ろされてゐる、と書いておく。その内容は、原書では殆ど觸れられず仕舞だつたSTLに關しての詳細と、來たるべきC++0xに對する展望が、主なところである。この項目だけでも、非常に興味深いと、個人的には思ふ。


本文書は平成21年4月19日執筆。



© 2009 oZ/acy. ALL RIGHTS RESERVED.