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: http://lists.boost.org/mailman/listinfo.cgi/boost
>

-- 
--------
Mitsyn Sergey
---
Это сообщение проверено на вирусы антивирусом Avast.
https://www.avast.com/antivirus

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk