Proof of concept for v2 - NO duplication, NO `static if` hell, NO difficulty with interoperability

Ola Fosheim Grøstad ola.fosheim.grostad at gmail.com
Mon Nov 1 08:08:32 UTC 2021


On Monday, 1 November 2021 at 00:05:30 UTC, Andrei Alexandrescu 
wrote:
> I've been to CppCon 2021 all of last week. There are as 
> exoected commonalities and differences between the languages 
> and the communities. But one thing is absolutely tremendous - 
> C++ is evolving, FAST, and everybody loves every minute of it.

The kind of code you see in presentations at CppCon does not 
reflect the kind you see in frameworks and applications. The kind 
of people that go to conferences aren't necessarily 
representative of the average user of said language.

D could do better than C++ if you instead of going with hype go 
with empirical evidence and science. That means looking at other 
peoples code and figure out what people do with the 
language/standard library, why they do it that way, and why they 
don't do it the «intended» way.

C++ is pretty much dead as an application language. You're better 
off using Swift + C++, TypeScript + C++ or Dart + C++. D can in 
theory do better than this, because C++ cannot change its 
foundation.

So yes, change is necessary, but C++ does not provide a good 
model. C++ does not evolve in a way that is based on usability or 
empirical evidence. C++ has critical mass, it would have been 
dead without it.

Freezing D2 and starting on D3 would be a much better approach 
and would allow you to pick up ideas from other languages than 
C++ (e.g. Rust, Pony etc).


> There is stuff added to C++11, improved in C++14, and 
> deprecated in C++17. And nobody bats an eye.

Most of the deprecations in C++ are just signature adjustments. 
Let us keep it real.

The reason people are happy with changes to C++ is that the 
foundation was poor, that hardware has changed and changes are 
non-breaking for most code bases.




More information about the Digitalmars-d mailing list