On 05/30/2016 08:46 PM, Andrzej Krzemienski wrote:
2016-05-30 12:04 GMT+02:00 Vladimir Batov:
Would not it be long-term proper to align boost::optional with std::optional? If that requires renaming boost in-place factories, then that might be a better long-term solution. I read your suggestion as "rename current in-place factories form boost::in_place to something else". Is that right?
I suspect that might be an unpleasant, unfortunate but essential move as Boost (or any other lib) IMO cannot possibly be changing, re-interpreting, re-implementing std concepts. The std lib is the center of C++ universe so to speak. Everything else are the ripples. If the "ripples" clash with std, they need to adjust. If boost::in_place is renamed to, say, in_place_factory, then the user inconvenience will be minimal with global rename. IMO. I understand that that might be beyond your boost::optional task/framework but I feel that'd be the right thing to do for the Boost ecosystem as a whole.
... I am pretty sure the in-place factories will never be standardized, as we have a superior solution in C++11: tags and perfect-forwarding of functions.
More reasons to do the right thing, i.e. to restore the std conformance.