Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Failed what? In its domain, it succeeded in its goals: a high reliability platform for aerospace, defense, and other mission critical domains. It was mandated by the US DoD for all software in the nineties and used in Airbus avionics and aboard the ISS, etc.

Its syntax and concepts were considered solid and so was selected as the basis of the VHDL hardware description language, also successful in its domain.



> was mandated by the US DoD

Vanishingly little was written in Ada as waivers were too easy to get.


Every former DoD engineer I've spoken to has worked pretty extensively in Ada. From the Phalanx, to the F-15/F-16. C++ didn't start becoming popular in those domains until the mid-00s. The first fighter jet to use it extensively was the the F-35[1], which many of the engineers attribute to it's early issues[2]; not because C++ was bad, but because so much well-tested and hardened code had to be replaced.

So, wherever these waivers were, they certainly weren't in those spaces.

1 - https://www.stroustrup.com/JSF-AV-rules.pdf

2 - https://www.defenseone.com/technology/2025/02/f-35-programs-...


> because so much well-tested and hardened code had to be replaced.

Not just software, entire systems. They built their own datalinks instead of aiming for compatibility with existing datalinks or pushing those existing datalinks to a newer version that could meet their needs.

In principle, that should have been their first (flight test ready) version. Just get the planes talking to an existing datalink network even if they had some next gen datalink target. But this is also a classic DOD project management problem. They aim for the full system instead of staging out a series of iterative versions.

And LM, in their infinite wisdom, hired more developers when they were late and ran their development in shifts. Because everyone knows the best way to get a late project back on track is to hire more people...


fred books, head of ibm 360 mainframe hw n os proj, wrote famous book - mythical man month.


Yes, that's what I was alluding to there. Apparently the LM F-35 managers had not read it.


As an intern I worked in Ada at a defense contractor, it seemed matter of fact for everyone around me who had worked in the field for decades. I'm not sure "vanishingly" is the correct adjective here.


Failed in the sense that it doesn't appear to be used anymore.

C and C++ are still used pretty frequently. I wouldn't say that they failed, but if someone wrote an application in Ada in 2025, I would find that a bit anachronistic.


>> if someone wrote an application in Ada in 2025, I would find that a bit anachronistic.

I suppose that Nvidia's use of Ada and SPARK for self-driving vehicles is anachronistic:

https://www.eenewseurope.com/en/nvidia-drives-ada-and-spark-...

https://nvidia.github.io/spark-process/process/introduction....


Forgive, but that smells of youth and recency bias. How do you judge lisp and k/qdb? Is C# the best language? Is Nim anachronistic? How would you write a desktop app using your exact same codebase on Win, Linux, Mac? That would be Free Pascal. Or maybe the desktop is now anachronistic, even though it still produces a richer UX.

Many languages have their great qualities. Whether or not they're outdated is a determination full of biases. Measure the language choice against resources and potential revenue. I'd be happy to write an app in Ada to proclaim its advantages as a sales pitch.


Maybe "failed" is a strong word.

I just don't see Ada used a lot anymore. This isn't a value judgement on it being "good" or "bad", lots of bad languages (like PHP) end up getting very popular, and lots of cool languages (like Idris) kind of languish in obscurity. Don't mistake me saying popularity is proper metric for how "good" something is.

When I say "anachronistic", I don't mean it as a bad thing either, just that it's not used a lot anymore. I've literally never heard of anyone writing an Ada application in the last twenty years outside blogs on HN.


I think the bias noose has tightened a lot over the years, so we don't avail ourselves to experiement like we used to - no chance for critical mass now that the profession has become so commoditized. It was wide open when I first started and devs were using all kinds of toolchains. The most money I've ever made selling applications (in today $) was from a TP (DOS) then later Delphi (Windows) codebase. Way back in 1991 I remember having a cigar with a client in SF and the dude wrote me a 70k check right there on the bar. What a huge thrill for me that was. Wild west of price and value discovery, which has totally disappeared.

One thing I do believe: the quality of software from MSFT has gone down, in part because their business model has gone from providing products to monetizing the users. Their products are just stagnant honeypots to collect data. This is opening a door for the small time dev to try new things, maybe with unpopular toolchains. I've got something that would be great for highlighting Ada's mission critical rep. Price and value discovery aren't dead (yet).


Anachronistic maybe, but it would still make a lot of embedded development a whole lot easier to get right. Modern Ada has a much better set of features compared to C, doesn't have the bloat of C++, and allows much better handling of embedded issues like fixed point calculations than either of them.

It's still a very modern language which is missing very little in that niche. It's only missing adoption.

I have high hopes for Rust in this space. Using C is fine, using C++ is madness, using Ada is good but fewer available devs.

Rust also solves a lot of issues with C++ and generally, once you get past the "fighting the borrow checker" to the "working with the borrow checker" phase has insanely good ergonomica, safety mechanisms and features. Additionally Rust has momentum right now.


I would say that it failed in its primary goal - to be a single language used for government software.

That doesn't say anything about the quality of the language, just that the goal for it was unrealistic. If the DoD had pressured Microsoft to support Ada in the same way they supported C++, Visual Basic, and vbscript, they might have been able to pull it off. But with the COTS directive and the utter lack of Ada support from commercial vendors, it was just never going to happen.


The popularity contest.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: