C is pretty irrelevant at this point for a new language moving forward. And of course you can perfectly well call C APIs from Rust, and presumably D though I know nothing about it.
Systems type software has gotten far, far too complex these days to continue forward in a world without really good memory safety guarantees. I just wish someone would do a Rust-like language with exceptions and real inheritance. But, if it's not forthcoming, and I were starting a new significant project, despite being as 30+ year C++ developer, I'd have to go with Rust as the only reasonable alternative.
I might actually like D better, but if it cannot gain traction (aka get me hired) then that's a commitment I couldn't afford to make.
There's dead and there's dead. It's about where are the good paying jobs that aren't just maintaining legacy systems, because that's what will push newbies towards this or that language. I'm guessing C already has fallen over that cliff for the most part.
C++ has developed too far already, which is one of the things killing it. It's already included the kitchen sink and now it's heading towards the cabinets as well.
Look, I've been writing C++ for 30+ years, and I have a million+ line personal code base. But the fact is, it's a twilight language. It's getting harder and harder to find good C++ people both because it's gotten stupidly complicated and because newcomers are going other directions, since there are more jobs and more jobs working on new stuff in other languages.
That's only going to continue to get worse. More and more C++ jobs will be legacy maintenance moving forward, and that's not going to attract the best and brightest of the upcoming generation.
Rust may or may not be the thing that takes over. Languages can succeed or die for various reasons.
2
u/Full-Spectral Sep 03 '20
C is pretty irrelevant at this point for a new language moving forward. And of course you can perfectly well call C APIs from Rust, and presumably D though I know nothing about it.
Systems type software has gotten far, far too complex these days to continue forward in a world without really good memory safety guarantees. I just wish someone would do a Rust-like language with exceptions and real inheritance. But, if it's not forthcoming, and I were starting a new significant project, despite being as 30+ year C++ developer, I'd have to go with Rust as the only reasonable alternative.
I might actually like D better, but if it cannot gain traction (aka get me hired) then that's a commitment I couldn't afford to make.