If you could make any changes to D, what would they look like?

Ola Fosheim Grøstad ola.fosheim.grostad at gmail.com
Mon Oct 25 20:59:54 UTC 2021


On Monday, 25 October 2021 at 20:41:25 UTC, Paul Backus wrote:
> In other words, it makes code easier to reason about and 
> concurrency bugs easier to isolate.

That remains to be seen? There is really nothing that prevents 
another thread from writing to something that @safe code has 
access to. So not sure how this is a better situation than C++ 
has...

I somehow doubt that such surface semantics are enough for people 
to convince themselves that the hazzle of dealing with a feature 
is worth it (outside the most enthusiastic D programmers). Shared 
ends up a bit like transitive const and pure: you could, but 
won't, because it doesn't appear to provide any real edge. So why 
bother satisfying a whining compiler if you can avoid it 
altogether?

> You are probably correct that `shared` is not very useful for 
> enabling compiler optimizations relative to what is possible in 
> C++.

It will be very difficult for D to grow its own niche if what 
distinguishes it from other languages is primarily on the surface 
level.

Rust is gaining ground on C++ because it is good at something 
that C++ cannot be good at, and that is probably also the only 
reason for why it is gaining ground?


More information about the Digitalmars-d mailing list