7 ms·
Wow. I developed in Ada in aerospace 17 years ago. I thought the industry would move toward Rust.
by atlgator 1y ago
Wow. I developed in Ada in aerospace 17 years ago. I thought the industry would move toward Rust.
- steveklabnik 1y agoRust is also making inroads, probably the most famous example is there’s two models of Volvo shipping today that rely on it.
- cashsterling 1y agoYeah... my intro CS class was in C and Ada95 (I'm not a CS guy btw, just took the class). I actually preferred Ada over C... but continued to program in C for other classes because of compiler availability; I had to do all my Ada programming on Sparc workstations at school. I personally think that AdaCore, and friends, missed an opportunity in the early 2000's to fully embrace open source... they left a big gap which Rust has filled nicely. I still think Ada is a great programming language. When a question comes up along the lines of: "what's the best programming language nobody's heard of?", or "what's the best programming language that is under used?" Ada is usually my first answer. I think other good answers include F#, <insert LISP flavor>, Odin, Prolog, Haxe, and Futhark (if you're into that sort of thing).
- pjmlp 1y agoWe are on Ada 202x nowadays being discussed, and in a world where FOSS tool makers have problems making a sustainable business, always changing licenses, there are still 7 Ada vendors selling compilers.
- anthk 1y agoLibre compilers do not impose restrictions on output.
- pjmlp 1y agoAs long as there are enough people around to actually work on them.
- fpoling 1y agoIn embedded world restrictions on the output is the last thing of worries while fulfilling various certification requirements can be a big and costly headache. And from the vendor point of view releasing a compiler under libre license allows for concurrents to undercut one on R&D leading to the compiler and related tools certification. So from business point of view it just makes no sense. This is very different from contributing to, say, clang, where a cost of maintaining own closed fork outweighs any disadvantages of contributing.
- ummonk 1y agoAnd only AdaCore / GNAT will ever support Ada 202x. The language has left the legacy vendors behind.
- pjmlp 1y ago5 years ago NVidia did not consider Rust mature enough for their use cases. This is the original announcement from 2020, "SPARK/Ada Journey to Adoption" https://youtu.be/DZSSyWlsb28?si=vh4gO-LT2N3Skaql https://youtu.be/DZSSyWlsb28?si=vh4gO-LT2N3Skaql Also we are now on Ada 202x already, quite different from Ada83, that some Rust folks keep comparing their favourite language with. You get all the niceties of a language more in line with Object Pascal productivity, formal proofs, a RAII approach safer than C++ (controlled types, automatic stack types, unbound collection types), industry baremetal profiles like Ravenscar, and the recent versions are in the process of having affine types as well (aka borrow checker).
- whytevuhuni 1y agoI don't know Ada / SPARK, and I've been trying to figure this out. Based on the hallucinations I got from ChatGPT, it seems Ada itself is nowhere near as powerful as Rust in safety, while Ada with SPARK disallows some things I was considering to be quite basic, such as shared aliasing of data. For example, it seems it's not possible to get a sub-string slice reference to an original unbounded string. In rust, a &str -> &str signature is trivial. So it seems Ada still relies on discipline, while SPARK does not have the zero-cost abstractions that C++ and Rust have. If that's true (is it?), then I'd definitely choose C++/Rust over Ada any time, since performance is very important to me.
- pjmlp 1y agoLess ChatGPT and more language reference manuals, ChatGPT isn't an ancient oracle knows it all, even though Microsoft's marketing sells it as such. Ada has as much zero cost abstractions as C++ and Rust have, and one of the reasons of Ravenscar is even what to turn off for bare metal deployments, and real time OS deployments.
- anthk 1y agoSeriously, if these people use ChatGPT to seek new knowledge, we are doomed. They are utterly clueless.
- 1y ago
- smokel 1y agoFerrocene [1] apparently offers an ISO-26262 certified version of Rust. I am thoroughly confused about these certification processes, but it also seems that AdaCore itself [2] has adapted the Rust compiler to be certified as well. [1] https://ferrocene.dev/ https://ferrocene.dev/ [2] https://www.adacore.com/press/adacore-announces-the-first-qualification-of-a-rust-compiler https://www.adacore.com/press/adacore-announces-the-first-qu...
- AlotOfReading 1y agoCertification roughly means "we have a pile of paperwork to help convince auditors that you followed a reasonable process".