Boost logo

Boost :

Subject: Re: [boost] [metal] Feature Complete - Request for Feedback
From: Sergey Mitsyn (svm_at_[hidden])
Date: 2017-02-21 10:21:07

On 21.02.2017 12:53, Hans Dembinski via Boost wrote:
> I suppose my big question is this: can't you just merge your
> ideas/improvements into boost::mpl? With ifdefs you could enable
> C++14 features like templated aliases when they are available. Even
> more so, it should be possible to merge your speed improvements into
> boost::mpl.

The biggest and most useful feature of "new" TMP libraries is variadic
templates that increase performance by a really huge factor. The problem
with MPL is that vector type sequence must derive from vectorN-s, which
are documented and can be used in template specialization. So it is
impossible or pointless to remplement mpl::vector in terms of variadic
parameters because of that. The other problem that I can quickly recall
is recursive iterator-based approach, which also kills performance.

Personally, I found it better from both performance and code sanity
sides to extract types from mpl::vector to variadic sequence via partial
template specialization (with mpl::vectorN<Ts...> using boost PP) and
then pass variadic type sequence to whatever TMP library I'm using
(brigand to be specific, but I think its unrelated in this case).

> Best regards, Hans
> _______________________________________________ Unsubscribe & other
> changes:

Mitsyn Sergey
Это сообщение проверено на вирусы антивирусом Avast.

Boost list run by bdawes at, gregod at, cpdaniel at, john at