Boost logo

Boost :

Subject: Re: [boost] [GSoC][MPL11] Post C++Now update
From: Joel de Guzman (djowel_at_[hidden])
Date: 2014-05-19 12:24:21

On 5/19/14, 9:11 PM, Zach Laine wrote:
> I was one of the people at the conference that tried to convince Louis to
> approach things this way. I wasn't the only one, and I can only speak for
> myself. The advantage to me is that I might have a library that I can use
> to do *both* compile-time only, and runtime+compiletime operations. Now
> that I have constexpr function and decltype(), I find the lines between
> compiletime and runtime operations to be sufficiently blurred that I don't
> draw the clear distinction I once did. For instance, in C++14, I can
> simply elide certain metafunctions I used to require to compute the return
> values of certain functions -- anything that can be done with a fold can be
> written in the form "auto foo (args) { return fold(some_fn, args); }".
> This makes me gravitate towards a solution that marries runtime and
> compile time as much as possible.
> That being said, it doesn't look like Louis is committed to one approach or
> another yet; he is still investigating. Also, he is not committed to
> making a drop-in Fusion replacement, just an updated MPL for C++11/14. He
> is simply trying to incorporate Fusion-like elements in that where they are
> appropriate. Louis, please correct me if I'm mistaken.

Sounds very cool. I'd love to see a proof of concept toy example. Anyone?
My concern here is that constexpr has severe limitations. I wonder
how useful a fusion library based on constexpr will be.


Joel de Guzman

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