On Sun, Oct 7, 2012 at 2:23 AM, Philippe Sigaud <philippe.sig...@gmail.com> wrote: > > Double-stage templates (which reminds me of rocket science :) ) > > template Merge(A...) > { > template With(B...) > { } > } > > > Usage: > > Merge!(int,double,string).With!(double,byte)
I can live with that, but, as I explained before, TypeTuples cause code duplication in certain cases because they force 'alias' to be used in the signature of the metafunctions. And how would you return a multi-dimensional TypeTuple? The result of certain metafunctions are multi-dimensional. For example, Permutations and Combinations will return multi-dimensional "containers". http://arlen.github.com/phobos/std_typelist2.html#Permutations