←back to thread

327 points AareyBaba | 3 comments | | HN request time: 0s | source
Show context
bri3d ◴[] No.46185823[source]
https://web.archive.org/web/20111219004314/http://journal.th... (referenced, at least tangentially, in the video) is a piece from the engineering lead which does a great job discussing Why C++. The short summary is "they couldn't find enough people to write Ada, and even if they could, they also couldn't find enough Ada middleware and toolchain."

I actually think Ada would be an easier sell today than it was back then. It seems to me that the software field overall has become more open to a wider variety of languages and concepts, and knowing Ada wouldn't be perceived as widely as career pidgeonholing today. Plus, Ada is having a bit of a resurgence with stuff like NVidia picking SPARK.

replies(5): >>46188588 #>>46188799 #>>46189574 #>>46190668 #>>46196352 #
pjmlp ◴[] No.46189574[source]
Given that there are still 7 vendors selling Ada compilers I always found that argument a bit disingenuous.

https://www.adacore.com/

https://www.ghs.com/products/ada_optimizing_compilers.html

https://www.ptc.com/en/products/developer-tools/apexada

https://www.ddci.com/solutions/products/ddci-developer-suite...

http://www.irvine.com/tech.html

http://www.ocsystems.com/w/index.php/OCS:PowerAda

http://www.rrsoftware.com/html/prodinf/janus95/j-ada95.htm

What is true, is that those vendors, and many others, like UNIX vendors that used to have Ada compilers like Sun, paying for Ada compilers was extra, while C and C++ were already there on the UNIX developers SKU (a tradition that Sun started, having various UNIX SKUs).

So schools and many folks found easier to just buy a C or C++ compiler, than an Ada one, with its price tags.

Something that has helped Ada is the great work done by Ada Core, even if a few love hating them. They are the major sponsor for ISO work, and spreading Ada knowledge on the open source community.

replies(1): >>46189912 #
skepti ◴[] No.46189912[source]
Another factor for Ada not being more popular is probably: https://en.wikipedia.org/wiki/Ariane_flight_V88

> The failure has become known as one of the most infamous and expensive software bugs in history.[2] The failure resulted in a loss of more than US$370 million.[3]

> The launch failure brought the high risks associated with complex computing systems to the attention of the general public, politicians, and executives, resulting in increased support for research on ensuring the reliability of safety-critical systems. The subsequent automated analysis of the Ariane code (written in Ada) was the first example of large-scale static code analysis by abstract interpretation.[9]

replies(2): >>46190191 #>>46191644 #
pjmlp ◴[] No.46190191[source]
People love to point that out, missing the amount of failures in C derived languages.
replies(1): >>46190255 #
1. skepti ◴[] No.46190255{3}[source]
But C-derived languages are also used much more. And it still shows that Ada does not automatically make software correct and robust. It presumably did indeed make Ada less popular than if it had not happened.
replies(1): >>46190526 #
2. pjmlp ◴[] No.46190526[source]
People still die in car crashes when wearing seatbelts, ergo seatbelts are useless.
replies(2): >>46190866 #>>46197328 #
3. skepti2 ◴[] No.46190866[source]
Yet that was not any of my arguments. It, ironically, applies more to the argument you made in your previous post.

A better argument would have been based on statistics. But that might both be difficult to do, and statistics can also be very easy to manipulate and difficult to handle correctly.

I think companies should be free to choose any viable option, and then have requirements that the process and end product is good. Mandating Ada or other programming languages, doesn't seem like it would have prevented Ariane 5, and probably wouldn't improve safety, security or correctness, instead just open the door for limiting competition and cartels and false sense of security. I believe that one should never delegate responsibility to the programming language, more that programmers, organizations and companies are responsible for which languages they choose and how they use them (for instance using a formally verified subset). On the other hand, having standards and qualifications like ISO 26262 and ASIL-D, like what Ferrocene is trying to do with their products for Rust, is fine, I believe. Even though, specifically, some things about the Ferrocene-derived specification seem very off.