Talk by Herb Sutter: Bridge to NewThingia

Russel Winder russel at
Fri Jul 3 18:32:17 UTC 2020

On Mon, 2020-06-29 at 15:45 +0000, Dagmar via Digitalmars-d-announce wrote:
> On Monday, 29 June 2020 at 12:17:57 UTC, Russel Winder wrote:
> > Of course C++ is now really a niche language used by those who 
> > still use it and do not move on to more modern languages!
> I am a C++ developer. I do want to move to a modern language, but 
> there is no one that fits my needs.

So stick with C++? Changing language is not always the right choice. But it is
a very context dependent decision.

> Rust has a very promising ownership-borrowing concept but the 
> lack of OOP and its awful syntax (mostly because of lifetimes) 
> make it a no go for me.

In the classic terminology, Rust is object based not object oriented. The
question is whether inheritance is crucial for the application. Clearly
inheritance is crucial to GTK, so the gtk-rs folk have created an inheritance
system in Rust.

In my experience, unless you are writing a library type, if your code has
lifetime variables then "you are doing it wrong". As soon as I stopped trying
to use any lifetime variables in my Rust applications it all got a lot easier.
Of course for library code that has to worry about lifetimes, they are needed.

> Go is just an oversimplified language. No generics/teplates in 
> 2020, seriously?

Actually the Go core team are very serious about not having generics in Go.
Despite the plethora of proposals, none have really made it. I do wonder if
often the objections to a proposal are more along the lines of "we didn't
think of that so it is not going in".

I think there will eventually be generics in Go, but I have no idea when. To
be open, I have stopped using Go. Not so much because of the language, but
because the GTK and GStreamer bindings are somewhat second rate.

> D has a GC. If you turn it off you lose dynamic/associative 
> arrays, classes, probably something else. Why would I even want 
> to use such language at all? It's much easier to stay with C++ 
> this way, since it has lots of C/C++ libraries, IDEs, tools, 
> broad community, support of big companies.

Or use Rust. ;-)

> C++20 is a big improvement at least because of concepts, 
> coroutines, and ranges.

I can't say I will be tempted back to C++, the GTK and GStreamer bindings are
a bit second rate. Having got into D and Rust for doing my desktop
applications, I am not going back.

Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w:

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <>

More information about the Digitalmars-d-announce mailing list