Boost logo

Boost :

Subject: Re: [boost] [Review] Type Traits Extension by Frederic Bron - Review summary and decision
From: Joachim Faulhaber (afojgo_at_[hidden])
Date: 2011-04-28 07:57:43


Hi Frédéric, list,

2011/4/21 Frédéric Bron <frederic.bron_at_[hidden]>:
> Hello everybody,
>
> It would be a shame if we all get angry from this discussion. I can
> propose the following to stop arguing:
>
> 1. each member of boost or boost-user can contribute (deadline April
> 29th 11:59pm CET) by giving his/her list of best names (just one list
> per member; only FULL lists are valid in the same order as described
> here: https://svn.boost.org/trac/boost/wiki/GuideLines/Naming/OperatorTraitNames).

Here is my proposal for the operator trait names.

Consistent with my preference on cross library and c++ standard naming
consistency these are the collections of names that are (measurably)
most consistent with the names used for operators in the standard
(header <functional>), Boost.Proto and other Boost libraries. They are
the name component called "Most Unifying Proposal (MUP)" from
Wiki-page https://svn.boost.org/trac/boost/wiki/Guidelines/Naming/Operators
prefixed by "has_".

I chose "has_" for the same reason: Consistency within boost, because
the type traits library uses has_ in similar instances. The argument,
that this is an imprecise naming because for free standing operators
ownership can not be determined is unimportant, because we may
conceive the complete type signature as the type that "owns" the
operator:

A x B -> B has_plus

Both name components, prefix "has_" and the most unifying operator
component are simple, commonly used, known from the language standard
and boost libraries, so they will be *expected* by users and most
easily recognized and remembered which leads to optimal usability.

To save you some time, I have inserted my proposal as column D into the Wiki at
https://svn.boost.org/trac/boost/wiki/GuideLines/Naming/OperatorTraitNames

Cheers,
Joachim

-- 
Interval Container Library [Boost.Icl]
http://www.joachim-faulhaber.de

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk