鍋あり谷あり

テーマを決めずに適当に書いています。

可変長引数の話

http://d.hatena.ne.jp/Nabetani/20050828#c1125242314
への返信。
(ここで文体が変わり)
相変わらず、
http://d.hatena.ne.jp/Nabetani/20050823#c1124987740
に書いてくださった、

Boost::MPL で(中略)template だけで可変長引数を使用する template は作れる

が、すごく気になってます。
で。教えて君みたいで申し訳ないんですが、
http://d.hatena.ne.jp/Nabetani/20050828#c1125242314
に書いてくださった

内部的にもプリプロセッサなしでできるはずですがあまりに力技になりすぎるのでプリプロセッサに任せた

の「力技」というのは、

  1. 機械的に生成できるソースをプリプロセスに頼らずに人間が書くこと
  2. C++template を複雑怪奇に使いこなし、コンパイラに対する嫌がらせかと思うようなソースを書くこと
  3. 上記以外

のどれでしょう??

1. なら書けること自体には疑問がありませんが、template とは関係のない普通の関数でも同様ですね。
2. なら、どんな template を書けば mpl::list のようなものが実現できるのか、非常に興味があります。
3. は、想定していませんが、一応用意しておきました。