Subject: Re: [boost] [bind] placeholders in namespace ::
From: Robert Jones (robertgbjones_at_[hidden])
Date: 2011-10-25 03:15:17
On Mon, Oct 24, 2011 at 11:36 PM, lcaminiti <lorcaminiti_at_[hidden]> wrote:
> >From the example above, the docs, and the source code, I am pretty sure
> Boost.Bind placeholders are defined in the unnamed namespace :: ... why?
> Isn't it a bad practice for a library to pollute the unnamed namespace?
Yes, you are correct, they are, and yes you are correct it's almost
certainly a mistake.
This comes up time and time again, and I think it's fair to say it's about
recognized misjudgement in Boost, but it's also water under the bridge now,
would be massively disruptive to change it. I guess at the time _1 seemed a
pretty innocent token token to put in the global namespace, and of course
it does allow you to use placeholders unqualified.
When Boost.Bind was more or less adopted as std.bind, this was changed.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk