Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2003-01-20 19:16:36


"Paul Mensonides" <pmenso57_at_[hidden]> writes:

> ----- Original Message -----
> From: "David Abrahams" <dave_at_[hidden]>
>
>> If you really care about this, why don't you work on making a boost
>> submission or bringing a proposal to the committee for the next
>> meeting?
>
> By all means. A policy-based smart pointer doesn't mandate the inclusion of
> all of Loki--even though there is much in Loki that is worth looking at.
>
>> > My feeling is that the boost community would of course be interested
>> > in looking over a related submission, but most of its members are
>> > not interested in actively working on such a port. And let's face
>> > it, I'm not popular with boost, and that doesn't help generating
>> > enthusiasm inside boost :o).
>>
>> I think your perception that your unpopular with boost does more to
>> hurt your ability to generate enthusiasm than any actual
>> unpopularity. You seem to have the attitude that the cards are
>> stacked against you, and to approach boost with a kind of resentment
>> and resignation that you won't get a fair hearing.
>
> I don't want to propagate a war here, but Andrei's perception (of
> his perception) is not entirely unfounded either. In the past,
> Andrei has raised some practical concerns with certain design
> strategies. At that time, his opinion was derided based entirely
> on, from my perspective, religious devotion to an unproven concept.

Argument is very different from derision. I think it would be very
foolish to deride Andrei's opinions, which usually have something very
incisive behind them.

> Andrei asked for practical examples of the utility of those design
> strategies, and he was effectively told, "If you don't like it,
> don't use it." I don't want to get into that old argument again,
> and that is not my intention. I'm merely pointing out that Andrei
> got flack for presenting an opinion counter to many Boost
> developers' and standing by that opinion.

I think there's a big difference between flack and disagreement. The
fact that some people weren't convinced by Andrei's argument, and that
you were, doesn't mean that there's a political bias. A lot more goes
into making a particular design appealing to people than logic.
People just seem to have different ideas about what's going to work
out.

To make this concrete, what I think you're referring to is that Andrei
made the argument that nobody needs different kinds of compile-time
data structures, while other people, drawing on their experience in
related domains, thought it was either incorrect or premature to make
that conclusion. Even if that was a completely wrong, unfounded, and
unreasonable conclusion, there's no reason to think that it was based
on anything personal.

> The fact is that there are many things that various Boost developers
> will argue over with religious fervor (i.e. another way of saying
> "political"), and I simply don't believe that people are entirely
> objective.

Of course they're not.

> Their preferences influence their beliefs, and people typically
> don't take criticism well. That is to be expected. Such is life.
                              ^^^^^^^^^^^^^^^^^^^^^^
Well, yes. If you want your arguments to be convincing, it helps to
consider how to best deliver them so they can be heard.

> The same thing looks like it is happening here with policy-based
> smart pointers. It seems to me that arguments are being
> manufactured to preclude the concept of a policy-based smart pointer
> (such as incompatibilities and the supposed complexity of
> interface--neither of which I personally think is significant)

Despite the fact that there's some available evidence that it has been
significant to some people. Who knows whether or not it's
"significant"? It's pure speculation. What we do here is to consider
the arguments.

> precisely because it isn't 'shared_ptr' or that it would subsume
> 'shared_ptr'.

As far as I can tell, that's *precisely* how it's been presented
historically: "here's a design which can replace shared_ptr and
auto_ptr and all the rest".

I don't have a strong opinion about whether a PBSP design should
subsume shared_ptr or not, BTW. I somehow think that the more I say
so, the less I'm believed.

> That may or may not be the case, but that is how it comes off to me,
> and I can see how it would come off that way to others.

With all due respect, that sounds like a knee-jerk reaction to the
fact that there's any discussion or disagreement with your
point-of-view. Most of the discussion about this particular issue has
been very detached AFAICT.

> This is precisely why I think that we need both forms. When experts
> disagree fundamentally on such a concept, both forms should be
> supported--and there is no question that both Dave and Andrei (and
> many others here) are experts.

But I don't think I have a fundamental disagreement with Andrei on
this. Really! How can I convince you?

Andrei will tell you that I wrote to him about 18 months ago because I
wanted to use Loki's smart pointer, but I couldn't because details of
its implementation was going to cost too much space. I can see the
need for something like that, and wish we had it in Boost. I just
happen to also see some merit in the POV of people who are nervous
about the consequences of that kind of design. I think it's worth
discussing a bit to see what the problems and solutions might be.
Sweeping those concerns under the rug or dismissing them as
"insignificant" isn't going to help move anything forward.

> It is also obvious that Andrei makes an effort to be civil when he
> disagrees (as do many others), but I think that sometimes he gets
> frustrated when people don't understand (or even see) his point of
> view. Actually, that goes for everyone here, and everyone needs to
> keep that in mind and take disagreement with a grain of salt.

Exactly. In order to reach consensus, we need to have patience with
other peoples' inattention, lack of insight, stubbornness, and
attachment to preconceived notions.

-- 
                       David Abrahams
   dave_at_[hidden] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution

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