We already have subnamespaces in std (e.g. std::chrono), so your
standardization plan could be realized as s/boost/std.
It could if I wanted to propose std::mp::if_, but I don't. I want to
propose std::mp_if.
I know that this makes the library more difficult to use in other Boost
libraries where there's no convenient place to put the using directive.
:-/
To expand on this a bit:
There are, in general, two main modes of use of Mp11, serving two audiences.
One is the "easy mode", where one includes , combines that
with `using namespace boost::mp11;`, then goes ahead using mp_this and
mp_that without qualification. This serves (a) people who play with
metaprogramming in short test cases, (b) people who have a need for a
metaprogram in a .cpp file (or an internal header file not meant for public
consumption), whether library or application one.
Mode two is in use in header-only libraries. There the library author is
generally reluctant to employ the using directive, which forces the
comparatively awkward mp11::mp_this style.
I realize that my choice gives preference to case one at the expense of case
two.