式オブジェクト without テンプレート

ETの説明を長々やってますけれど,ここでふと「こういう式オブジェクトの実装は別にテンプレートを使わなくても出来ますよ」ってことを最初の最初に書いておくべきだった気がします.OOPというか,動的なオブジェクト生成でもETと同様な実装は可能です.式オブジェクトクラスに階層組んでおいて,テンプレート引数の無いオブジェクト生成していって,式を評価する関数を仮想関数にすれば良いだけです.ただ,こんなことをすると+や-の評価に毎回関数呼び出しがかかってしまい(仮想関数なのでinline化できない),とんでもないoverheadがかかるので,テンプレートを使ってコンパイル時に関数呼び出しを評価する必要性が出てくるわけです.
ちなみに,こういう動的式オブジェクト生成による実装を昔自分で面白半分に作ったことがありまして--対象としていたのは高速自動微分法のC++による実装だったのですが--絶望的に遅かった記憶があります.なんせ,doubleの加減算に関数呼び出し使うような設計だったのでw.
後,Newmat(http://www.robertnz.net/index.html)というC++数値計算ライブラリが確かこの動的式オブジェクト生成による実装だったはず.(数値計算ライブラリの場合,高次元計算になればこういう関数呼び出しのoverheadは償却されます)