Boost logo

Boost :

Subject: Re: [boost] C++ announcements coming tomorrow
From: Eric Niebler (eric_at_[hidden])
Date: 2012-11-03 18:15:19

On 11/3/2012 2:24 PM, Paul Mensonides wrote:
> On 11/3/2012 10:26 AM, Nathan Ridge wrote:
>>> * Microsoft has released an out-of-band community technical preview
>>> (CTP) for their compiler, adding explicit conversion operators, raw
>>> string literals, function template default arguments, delegating
>>> constructors, uniform initialization, and variatic templates. (See
>>> for instructions on how to use the CTP). Microsoft is promising more
>>> such feature releases during the first half of 2013. This is important
>>> for the whole C++ community, since it means that full C++11 support is
>>> becoming a reality across all widely used compilers.
>> Shortly after this talk, Herb held a Q&A session where people had the
>> opportunity to ask him questions about these announcements (can't find
>> a link at the moment).
>> Someone asked whether Microsoft intends to implement full 100% support
>> for standard C++(11), and Herb answered with a resounding 'yes'.
> <rant>
> IMO, yet more marketing b***s***. This has been said before, and Herb
> has long since lost my trust (and the trust of many others). He is no
> longer a free voice. The only person on C9 that doesn't come off as an
> MS shill is STL.

I'm afraid I thought the same thing when he said this. He has also
stated publicly that Microsoft won't ever implement 2-phase lookup,
which, last I checked, is required for 100% std-compliance. I'll give
Herb the benefit of the doubt and assume he was answering the "will MS
implement all the new c++11 features?" which I believe is yes.

>> Did anyone tell him about the problems with VC's preprocessor that come
>> up on this list again and again and that prevent a powerful preprocessor
>> metaprogramming library like Chaos from being usable on VC?
> He's been told repeatedly.

To be fair to Herb, it's not his call to make.

> Not that I'm against a "foundation" or against adding more libraries to
> the standard library, but the only things that C++ programmers need to
> produce portable code are C++ compilers that implement the standard (and
> only the standard--not a bunch of vendor-specific extensions). As an
> example, paraphrasing, "We're proposing 'await' but if the committee
> doesn't want it we can always add it as an extension." It is particular
> compiler vendors and their compilers that are getting in the way of
> progress.

I disagree with the view that it's categorically wrong for compiler
vendors to implement extensions, as long as there is a way to turn them
off, and as long as the standard library works in a std-compliant way
when they're off.

> Further, we don't need C++/CX (or whatever it is called this iteration).
> The .Net Framework is a huge pile of typical MS bloatware, and,
> contrary to popular opinion, C# is actually *not* a good language.

C++/CX has nothing whatsoever to do with .NET. You're thinking of C++/CLI.

> It
> actively interferes with abstraction and encourages bloatware
> production. I am so tired of hearing the "right tool for the job"
> fallacy WRT programming languages especially WRT to C# and Java.

One language to rule them all, then?

> Aside, I'm also sick of hearing the word "app" and constant attempts to
> justify turning productivity into novelty with things like big
> touchscreen monitors and statements having to do with the supposed lack
> of UI innovation--which has now led to anti-productivity UIs such as
> (vanilla) Gnome 3, Unity, and, worst of all, Metro.
> </rant>


Eric Niebler
BoostPro Computing

Boost list run by bdawes at, gregod at, cpdaniel at, john at