Stroustrup's slides about c++11 and c++14

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Sat Sep 13 18:49:28 PDT 2014


On 9/13/14, 3:25 PM, Walter Bright wrote:
> On 9/13/2014 1:10 PM, eles wrote:
>> This presentation:
>>
>> https://parasol.tamu.edu/people/bs/622-GP/C++14TAMU.pdf
>>
>> He criticizes C99 VLA (slide 24) as being "an abomination"
>>
>> But the surprise comes at the end (slide 57), where he also
>> criticizes... the
>> static if as being "a total abomination". Well, this is D, I told myself.
>>
>> Are those points valid?:
>>
>> static if is a total abomination
>> • Unstructured, can do everything (just like goto)
>> • Complicates static analysis (AST-based tools get hard to write)
>> • Blocks the path for concepts
>> • Specifies how things are done (implementation)
>> • Is three slightly different “ifs” using a common syntax
>> • Redefines the meaning of common notation (such as { ... })
>>
>
> Yeah, well, we have many years of experience with "static if" and no
> apocalypse has yet happened.
>
> The proposal:
>
> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3329.pdf
>
> Bjarne's rebuttal:
>
> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3613.pdf

D offers strong evidence that static if is an enormously useful 
construct. I have all respect for Bjarne as language designer, 
researcher, and engineer, but the evidence suggest he called this wrong. 
He is right that static if would have derailed work on concepts, because 
it simply exposes them as missing the point. From that perspective N3613 
is entirely politically motivated (almost all technical arguments are 
bogus, and the reasonable ones are exaggerated by the fallacy of vivid 
argument).

N3613 has achieved its purpose - static if will never be a part of C++, 
so from that standpoint it has been successful. However, it is one of 
the most vitriolic papers I have ever seen within a serious 
organization, and I hope for its authors' sake they have the decency to 
not be proud of it in private.

> C++ is adopting D features anyway. The constexpr proposals are looking a
> lot like CTFE :-)

That won't be admitted, although I have reasons to believe is true. C++ 
intelligentsia seems to have a superiority complex with regard to D, and 
that's entirely understandable.


Andrei



More information about the Digitalmars-d mailing list