Subject: Re: [boost] [TypeErasure]
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2012-07-23 15:30:26


AMDG

On 07/23/2012 11:17 AM, Markus Werle wrote:
> Steven Watanabe wrote:
>
>> AMDG
>
> [*slightly* off-topic: Does that mean Ad maiorem Dei gloriam?]
>

Yes.

>> On 07/22/2012 07:21 AM, Markus Werle wrote:
>>> Hi Steven!
>>>
>>> I have one question: proto and spirit use _1, _2, etc.
>>> TypeErasure uses _a, _b, _c ...
>>> What was your reason to introduce yet another placeholder set?
>>
> http://steven_watanabe.users.sourceforge.net/type_erasure/libs/type_erasure/doc/html/boost_typeerasure/design.html#boost_typeerasure.design.placeholder
>
> I disagree with this decision. You write:
>
>> An earlier version of the library used the names _1, _2, etc.
>> instead of _a, _b, etc. This caused a certain amount of confusion
>> because the numbered placeholders are already used by several
>> other libraries including Boost/Std Bind, Boost.Phoenix, and Boost.MPL.
>
> IMHO the introduction of another set of placeholders is more confusing.
> If we are to discriminate here, we can do it via namespaces - and of course
> one day it is std::_1 for all of us.
>
> Just because your library is the first to use _a, _b, _c

It isn't. Boost.Phoenix uses _a, _b, etc for local
variables.

> what does that mean
> for future (boost) libraries that use some kind of placeholders?
> Do they have to use _aa, _bb, etc.?
> To me placeholders are such a natural concept I do not care about having
> some kind of "deja vu" here. To the contrary: The meaning (placeholder) is
> identical so we should use identical names.
>

It isn't exactly identical. The names _1, _2
carry extra meaning about how they are substituted
which doesn't make sense for my library.

>> I eventually decided that since the placeholders represented named
>> parameters instead of positional parameters, letters were more
>> appropriate than numbers.
>
> Indeed the naming is arbitrary. Starting from the same observation (_1 is
> already available in boost::*) I draw the opposite conclusion:
> Use these names for the sake of symmetry and hope for convergence of
> concepts over the years.
>
> @Review Master: Should I miss the end date for reviews, take this as my mini
> subset of a review: I'd prefer _1, _2 instead of _a, _b.
>

You are of course free to disagree with
my decision, but I'm not going to change it.

In Christ,
Steven Watanabe