[proto] new version, breaking changes (was: proto::tag naming convention)
Eric Niebler wrote:
> Maurizio Vitale wrote:
>> What is the rationale for not having proto::tags match the corresponding
>> mpl metafunctions?
>> For instance mpl has plus and proto has add (but unary_plus).
> Oh my. You're right, that's awful. I'll fix these.
I've changed the names of some types in proto to bring it in line with
conventions established in <functional> and Boost.MPL. This should
affect just about everybody currently using proto. In particular:
> Eric Niebler <eric <at> boost-consulting.com> writes:
>>> If you want to change both, a possibility would when (for if_) and
>>> unless (for not_).
>> Interesting. All, any, when, and unless are not unreasonable. I know you
>> retracted this suggestion in another message, but I want you to bring it
>> up again when proto is under review. Naming is super-important, and I
>> want more feedback on this issue. I'll remind you when the time comes.
> Another possibility is to use separate namespaces
I thought about that, and it's not unreasonable, either. It might cause
less confusion. However, the different or_'s will often be used
together, making qualification a requirement. Compare the following
(assumes using namespace proto;):