Rename 'D' to 'D++'

Ola Fosheim Grøstad via Digitalmars-d digitalmars-d at puremagic.com
Fri Mar 10 12:31:59 PST 2017


On Friday, 10 March 2017 at 19:53:52 UTC, Ali Çehreli wrote:
> - constexpr (a poor man's CTFE)
> - Type inference
> - Range-based for
> - Lambdas

As far as I can tell C++11 was mostly an absorption of existing 
practices, largely syntactical in nature. Lambdas are only 
syntactical sugar over function objects (which  in turn is a weak 
version of Beta patterns, a language Bjarne most certainly knew 
of as he has complained about someone running off with his book 
on the language and the fact  that he shows a lot of respect for 
Kristen Nygaard). The for loop was pure syntactical sugar over 
STL iterators, on the level of a C-macro...

> - (Not sure about D timeline here) Explicit overrides and final

Beta has it.

> - Null pointer constant

Simula. Which C++ is a direct descendant of.

> At this point it feels like copying almost the entire list so I 
> stop. :)

Well, the only big thing in C++11 was standardization of 
ownership mechanisms and getting more compact syntax for function 
objects (lambdas).

The C++ language semantics didn't change much IMO. The idioms has 
changed a lot though. Although it isn't as visible in the 
codebases on github yet...



More information about the Digitalmars-d mailing list