C++テンプレートテクニック第2版」に推薦文を書かせていただきました。C++で遊ぼう献本もいただきました。著者の二人に感謝いたします。以下推薦文です(本書に含まれている)。私は5年くらい前まではC++を仕事で使っていましたが、現在はPythonやScalaなど他の言語を主に使うようになりました。テンプレートについてはもちろん、C++についての本を読むのは久しぶりで、色々と忘れていたことや、C++11の新しい機能などもともと知らなかったことなど、楽しく読ませてもらいました。他言語のユーザから見ると、テンプレートというのはC++に特有な機能で自分にはあまり関係ないように見えるかもしれません。メタプログラミングを含め、コードの抽象化能力は一般的にプログラマにとって大事な能力だと思います。それは今まで違う問題に思えていたものが同じ問題に見える能力であり、生産性にも直結するからです。この本は、様々なテンプレートの手法について、なぜそれが必要となるのかという説明がわかりやすく書いてありますので、コードの抽象化の考え方を示すパターン集として、他言語のユーザにとってもヒントになることは多いのではないかと考えます。動的型付けスクリプト言語のユーザから見ると、C++テンプレートの世界は回りくどいことをやってるように見える点もあるかもしれませんが、型を強く意識しながらも抽象度を上げる方法を示しているという点で、その世界に触れておくことは意味のあることだと考えます。この推薦文を書くにあたって、正直迷いました。C++の最近の仕様には全くついていけてないし、はたして自分がこの本を推薦する資格があるんだろうかと。推薦文を書く前に本文を読ませてもらいましたが、正直言って半分理解できたかどうか。知識は足りないかもしれないが、以前にC++を長い間使っていてそれなりにコードも書いてきたし、Boostの翻訳プロジェクトに参加したこともあり、思うところはいろいろあります。思いだけで勢いで書いた感じで、こいつわかってないな風な推薦文になったのはご容赦ください。離れてしばらくたちますが、C++のなかでもテンプレートは特に面白いというのは今でも思っています。C++プログラマ的中二病は、コンパイル時にテンプレートで無駄に超キモい計算をしてみるということかと思ってます。みんなが通った道ではないでしょうか。(そうでもない?)ところでこのブログ記事、実は数日前に書いていて、アマゾンのステータスが「予約受付中」から「在庫あり」になったら公開しようと思ってました。宣伝も兼ねているので。ところが、今見たら「在庫切れ」になってます。してすごい売れてるんでしょうか。(AA略)ということで、みなさん買いましょう。コメントをキャンセルメールアドレスが公開されることはありません。