Boostメモ
MacOSXにboostを入れて遊んでみる。ビルド&インストールのメモ
- Boostのダウンロードページからboost-jam(makeみたいなもの)とboost本体をダウンロード。
- boost-jamを先にビルド
% cd boost-jam-3.1.11 % ./build.sh
- ./bin.macosxppcにbjamが出来上がっているので,それをBoostの本体のディレクトリに移動(この手続きは必須ではない)
- Boost本体をビルドする。/usr/local/include直下にboostへのシンボリックリンクを貼った。後でソースコードを追えるようにタグも作成しておく(GNU globalを使用)。
% ./bjam -sTOOLS=gcc --prefix=/usr/local % sudo ./bjam -sTOOLS=gcc --prefix=/usr/local install % cd /usr/local/include % sudo ln -s boost-1_33 boost % cd boost % sudo gtags
Boost本を片手に漁ってみた。試しにbindの中身を追ってみたが,ポカン度高し。lexical_cast,bind,ユーティリティ系はすぐにでも採用したい。noncopyableがシンプルでカッコいい。FORBID_COPY(Hoge); みたいなダサマクロを書く必要が無くなる。このイディオムは早速いただこうと思う。
もうこれは別の言語とのハイブリッドだと思った方が良いのかも。Expression Templateなどのテクニックも自分で作るというよりは「言語の機能」として覚えておく程度である程度十分な気がする。やっぱり変態になるのはやめて,賢い利用者になるための努力をしよう。
ところで,MacOSX上でObjective-C++を使えば,SmallTalk譲りのdynamicなプログラムも,テンプレートを使ったgenericなプログラムも,普通のCのプログラムもごちゃまぜにして書ける。幸せだね。