Subject: Re: [boost] [review][mp11] Formal review of Mp11
From: Barrett Adair (barrettellisadair_at_[hidden])
Date: 2017-07-27 03:41:48


On Sat, Jul 15, 2017 at 5:19 AM, Bjorn Reese via Boost <
boost_at_[hidden]> wrote:
[snip]

>
> 1. Should Mp11 be accepted into Boost? Please state all conditions
> for acceptance explicity.
>
> MP11 should be ACCEPTED. I don't really have an opinion on the merits of
mp11 vs. Metal/Brigand/Kvasir, but I think MP11 has a home in Boost, and
I'm glad it has been proposed. Apologies for the late review.

> 2. What is your evaluation of the design?
>
>
I really like the lightweight approach, and I especially appreciate the
wide compatibility. The compatibility level is the biggest value to Boost
here -- the effort required to achieve this is significant.

The algorithm selection is fine. I'm not a fan of the mp_ prefix. I'm also
not a fan of interfaces with "first", "second", and "third" (I prefer
indices).

> 3. What is your evaluation of the implementation?
>

I think the manual unrolling of variadic templates is strange (reminds me
of old C++), but I assume this is done for optimization (?).

 4. What is your evaluation of the documentation?
>
> It seems solid. I only skimmed it.

> 5. What is your evaluation of the potential usefulness of the library?
>
>
Useful, given its compatibility claims. I will continue to use Hana for my
projects, but I would reach for this if I needed to support MSVC.

> 6. Did you try to use the library? With what compiler? Did you have
> any problems?
>

No.

>
> 7. How much effort did you put into your evaluation? A glance? A quick
> reading? In-depth study?
>

I skimmed the unified header and the docs. I spent a total of about 90
minutes.

>
> 8. Are you knowledgeable about the problem domain?
>

Yes. I am very familiar with the implementation and usage of many
metaprogramming libraries and techniques.

Barrett Adair