From: Eric Niebler (eric_at_[hidden])
Date: 2007-05-20 19:31:59
Maurizio Vitale wrote:
> On May 20, 2007, at 4:26 PM, Eric Niebler wrote:
>> 3) You haven't said what proto::if_ and proto::not_ should be.
> I didn't indeed. The reason is that I was concerned with tags that
> can appear in
> expressions and have a different name in MPL. Then if_ wouldn't be a
> and not_ could stay (I'd say should stay) because has the same
> meaning as mpl::not_.
No, mpl::not_ corresponds to proto::logical_not, and proto::not_ sticks
out just as proto::or_ does.
> 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.
The mpl names come from the standard. "bitor" is an alternate token for
|. Extending this, bitor_eq is an alternate token for |=, which suggests
that bitwise_or_assign should be bitor_eq_. But then what about
operator=? Should that be eq or eq_? These are a bit too terse for my
taste, and could be confused with ==, which is equal_to. And
<functional> has equal_to but greater_equal (not greater_equal_to). A
perfectly consistent set of names may simply be impossible.
-- Eric Niebler Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk