Spark, a subset of Ada 2012 supports formal proofs of program properties ranging from absence of run-time errors to functional correctness (compliance of the code with formally specified requirements).
Ada, Fortran, and even Cobol, satisfy the needs of a given domain: safety-critical environments for Ada, scientific computing for Fortran, business transactions for Cobol.
They won't be replaced in the next decades, and even some new systems might be implemented in them.
Languages for production were often designed to address a set of (hard) problems, as opposed to general-purpose languages (Python, Java, C++, etc.)
Sure, there are some web servers/apps written in Fortran or Ada. But those are examples of what the languages can achieve, not how they are actually used in production.
A lot of flight and safety critical software has gone c++ at least in the US. Do178b approved g++ clones started popping up about 25 years ago and have made dramatic inroads.
There have been those. Also there have been closed source compilers with identical switches. I have always suspected copyright violations because the scope of writing a c++ compiler but who knows.
Interesting to hear that. DOD no longer requires ADA, so many projects that did use it have converted to C++. There were even people brought in to do automated Ada-> C++ conversion a number of years ago.
MISRA C definitely makes many improvements in this area. However, writing decent Ada code is so much easier than writing C code that conforms to MISRA ( or JSF ) standards.
Yep. UB means that your program could crash, but it also means it's valid for the compiler to print out a warning and do the right thing, or error, or anything.
A Lot of older languages like ADA are still around, up to date and have surprisingly active and friendly communities. The health and state of any language should probably not be judged by how popular or how often it is mentioned on hacker news.