
2018-01-30 18:56 GMT+01:00 Vinnie Falco via Boost
On Thu, Jan 18, 2018 at 2:07 PM, charleyb123 . via Boost
wrote: The formal review of Niall Douglas' Outcome (v2) library begins Fri-19-Jan and continues until Sun-28-Jan, 2018.
My sincerest apologies, I am aware that the review period has ended. However, given the absence of dissenting voices I find it necessary to enter my comments into the public record.
I will keep this short, so I will state unequivocally:
Outcome should be REJECTED
My reasons are as follows:
1. The library is not available to C++11 users. I understand that technically this is not against "the rules" but my rationale is as follows:
a. Outcome provides fundamental vocabulary types. Boost has traditionally been the library collection to provide up and coming C++ features. For example boost::variant is usable in C++11 while std::variant is not
b. Nothing in the implementation of Outcome should require C++14. As an example, Peter wrote a remarkably good version of expected and result using only C++11 and his "better variant" class (which also only requires C++11). Unfortunately he never published this work. I would prefer it over this Outcome.
A valid point. What is the reason for Boost.Outcome requiring C++14? If it is the `constexpr` guarantees, could the `constexpr` be just dropped for non-C++14 compilers? Regards, &rzej;