Boost logo

Boost :

Subject: Re: [boost] "Simple C++11 metaprogramming"
From: Peter Dimov (lists_at_[hidden])
Date: 2015-05-30 17:07:00


charleyb123 . wrote:

> > http://pdimov.com/cpp2/simple_cxx11_metaprogramming.html
>
>
> Very nice. Very clean and impressive post.

Thank you. The speed at which you were able to read all of it is certainly
impressive in its own right.

> I particularly liked these two assertions:
>
> (a) mp_size to compute type-list length is a truly generic primitive which
> is, "...so nice that [you'd] argue that all our metaprogramming primitives
> ought to have this property."
>
> (b) "Lack-of-higher-order-metaprogramming", suggesting that in C++11 and
> beyond, we largely should not need metafunctions such as compose, bind, or
> a lambda library.

The only problem with (b) is that you can't define a template alias inside a
function, which I myself found more than a bit annoying. Lambda functions
a-la Hana have a distinct advantage here - they can be defined inside
functions.

Still. :-)


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