The question is about new development, and to what extent C and C++ are evolutionary dead ends. Nobody would design a language like C today, would they? They'd be laughed at.
You're making the mistake of assuming that because you know something really well, that makes it good.
The talk on their coding standards, automatic code checking, code review and code coverage is well worth watching and listening to.
http://cacm.acm.org/magazines/2014/2/171689-mars-code/abstra...
Incidentally, according to Wikipedia, development of C started in 1972, the same year buffer overflows as a concept were first documented.
Use the right tool for the job, given the circumstances.
Use the right tool for the job, given the circumstances.
Use the right tool for the job, given the circumstances.
I know I said the same thing repeatedly, but around here when claiming that C is sometimes the right tool, you have to state "Use the right tool for the job, given the circumstances" more than once, and there will still be people saying that there is no use for C ever ever ever and everyone should use {fetish language du jour}.
I think the mistake you made was seeing your own concerns (safety) and assuming that because your needs require you to use something other than C, nobody should use C. I see this a lot in the programming world; people forget that they work in a tiny tiny tiny corner of the industry and assume their experience applies everywhere.
Too bad not two projects can agree which subset.
https://isocpp.org/blog/2015/09/bjarne-stroustrup-announces-...
Such an effort would be so much easier to advocate for in a C++ shop, and more importantly, very difficult to argue against.
This deserves a proper HN discussion. I've resubmitted it, it missed the front page the first time around:
https://news.ycombinator.com/item?id=10545921
(sorry for the karma stealing, lucozade totally deserves the karma if my resubmission takes off)
C++11 is as terse as ML.
C++'s apparent excess of features is mostly due to the fact that its memory model and type system have hundreds of edge cases that need handling. Compared to D, Rust and other newer languages, C++ never actually feels full featured (despite being horribly complex in some areas).
Before J2EE was a thing, there were something called CORBA and COM and mainly used from C++.
It's not going away just for historical reasons. There is too much code written in it which needs to be maintained in the next decades. I don't envy them who are forced to do that :-)