ITコンサルの日常

ITコンサル会社に勤務する普通のITエンジニアの日常です。

「The Art of UNIX Programming」読了

The Art of UNIX Programming

The Art of UNIX Programming

5,800円という値段に躊躇しつつも、勢いで買ってしまいました。
内容は2003年当時のものなので、新しい知識を得ようという人には向きませんが、Unixの歴史と文化を学ぶには良い本だと思います。
僕が気に入ったのは、プログラムをいかに簡潔に単純に作るかということで、本書中でも繰り返し述べられています。
具体例として7章で取り上げられているbcとdcの例が面白かったです。

現在のGNU版のbc(1)は独立したプログラムになっているが、古典的なバージョンは、パイプを介してdc(1)にコマンドを渡すプログラムだった。この作業分担において、bc(1)は変数の置換や関数の展開、中置記法逆ポーランド記法への変換といった処理をしていたが、計算自体はしていなかった。入力式をRPN(逆ポーランド記法)に変換してdc(1)に評価させていたのである。

なので、多分、

echo 1+2 | bc | dc

みたいな感じだったのでしょう。
計算機能をbcに持たせないことで、単純化を図っているところがポイントですね。


あと、個人的な興味としては、yacc/lexとか、Emacsとか、面白そうだなぁと。
プログラミング言語が作れるっていうのと、便利機能をLispで追加できるエディタっていうぐらいの認識しかないですが。
どっちもオライリーの本出てそうなので、そのうち読むかも。