
Could we just have boost::operators (i.e. without 2)? The old implementation didn't have a namespace and the new one is supposed to replace it, isn't it?
I'm not entirely sure what the plan is with boost operators2. As far as I could tell there wasn't much of a consensus on what the plan was (unless I missed a post somewhere). Ideally it should replace boost operators, but there are a lot of old compiler fixes which have been removed, and a few potentially breaking changes in my current test implementation. Potentially "breaking" changes: 1. there's no "addable1/addable2" class naming, I'm relying on template partial specialization so addable<T,T> will map to a template specialized implementation. 2. Pretty much all "compiler-specific-compatibility" code has been removed. The minimum requirements is a C++03 compliant compiler (possibly just C++98 compliant since the two are so similar). 3. The library now relies on boost::move. Note that boost::move maps directly to standard C++11 features if available, otherwise there's a backwards-compatible implementation. 4. All operators2 code is in the boost::operators2 namespace (easily could be boost::operators if we decide to not move boost operators there). It's very easy for me to change the boost operators2 implementation to completely replace boost operators (just need to do a few find/replaces and delete the old operators.hpp). If this is the plan, I can for-go any changes in the current operators.hpp because modifying it to reside in boost::operators is not a simple task.