On Mon, Oct 22, 2012 at 12:41:08AM +0200, Lars Gullik Bjønnes wrote:
> 
> It is mentioned in c9b9748c that "using namespace std" on msvc10 also
> drags in std::tr1 stuff.
> 
> IMHO the soltion is not to use boost::shared_ptr etc. But to stop
> using "using namespace std". I look briefly as to what was discussed in
> 2007 when the "using namespace std" was introduced all over, and afaikr
> this was done to get rid of the "using std::<stuff>" lines? Agree with
> the move to get rid of all the "using" lines, but not with the solution.
> 
> IMHO a much better solution is to just use "std::" prefix where
> required.

Precisely. Where required. Fortunately, it's not very often _required_.

Namespaces exist for a reason, and the reason is not to spell them
fully out all the time. If that had been the intention, all the
namespace wording could have just been left out of the Standard,
greatly simplifying it.  Instead of 'std::vector' we would simply be
using 'std_vector'.  Or use colons as part of identifiers. 
It isn't like that - luckily.

namespaces exist for a reason, and the reason is to keep things
apart when needed, not when possible.
 
> I am willing to do the work to remove "using namespace std" and put
> std:: where required. This will also make declaration signatures
> cosistent with signatures on definitions, and without haveing a
> mixture of std:: and non-std:: in source files.

I hope this crusade stops before it begins. This kind of "work"
adds no value to the source, just introduces an additional chore
for people when writing and reading code.

LyX source is currently in a pretty good shape. Keep it like that.
There's no need for yet another Lost Decade of Overengineering.

ANdre'

Reply via email to