
I really don't mind if it gets spelled with namespaces instead of underscores, but a using declaration is not a motivation for it.
OK. But I prefer namespaces rather than decorating names with some common 'prefix' to show commonality. I personally believe as an end-user that there is the tendency to pile too much directly into the boost namespace.
Using namespaces, it would become: namespace boost { namespace operators { has_equal_to has_not_equal_to has_greater has_greater_equal has_less has_less_equal has_plus has_minus ... }} There would be a small inconsistency because for example we have boost::algorithm:: (singular) but boost::operators:: (plural) but we clear cannot use boost::operator::. For such a decision, that is if we go for has_operator_xxx or operators::has_xxx, what is the practice to decide what we accept? Obviously it would be difficult to have everybody satisfied with either method. I do not want to switch to namespace if we are not sure to go for it. Same question for has_new_operator vs has_operator_new vs operators::has_new Frédéric