4 ms·
Interesting they didn't go with MISRA C and used C++ instead.
by CodeGlitch 5y ago
Interesting they didn't go with MISRA C and used C++ instead.
- johnisgood 5y agoInteresting they didn't go with Ada/SPARK, to be honest.
- pyjarrett 5y agoAda/SPARK is pretty close to unheard of in the US. People tend to solve problems with the languages they know and can find people to hire who know it. C++ is fast, and there's a good number of people to hire who know it. Actual comments I've heard from senior developers when I tell them I write Ada in my spare time: - "That language is still around?" - "Other than you, I've never heard or anyone who has ever used Ada."
- bdavis__ 5y agowhen i was first exposed to ada, early 1990's, the language was unusable. compile times where excessive (like hours). machines of that era were slow and had small memories (4MB was a common size, and more than 1 CPU was a luxury). i must also admit, ada was hard. you had to do some mojo just to print out a value ("package int_io is new integer_io blah, blah). it had a standard of a couple of hundred pages that you kept on your desk. and you looked at it on a regular basis. and the compiler was picky (strongly typed). companies dropped ada because they couldn't hire. C++ people were more available. my opinion today is ada is relatively small, makes very fast code, and supports all the programming paradigms of C++ in a very sane way. if the first ada compiler was "ada95" instead of "ada83", it would be very popular. it came out a decade before the world was ready.
- pyjarrett 5y agoAda 2012 is what I learned, but I probably would have moved on if had learned Ada 95. They've done a fantastic job modernizing it, and the next version looks even better (Ada 2022). > my opinion today is ada is relatively small, makes very fast code, and supports all the programming paradigms of C++ in a very sane way. This is why I've been sticking with it. I also get pre/post conditions, a real module system (yes, I know C++20), and bounds checked arrays/strings. Easy built-in multitasking has me using concurrency a lot more often as well. > companies dropped ada because they couldn't hire. C++ people were more available. I work professionally in C++, and honestly think you could convert a C++ programmer into an Ada one in about a month or so, due to the conceptual similarities.
- bdavis__ 5y agoagreed. on all points.
- exhilaration 5y agoAda/SPARK is pretty close to unheard of in the US. I'm confused, I knew a woman in the early 2000s that worked out of Fort Dix in New Jersey, doing ADA development for U.S. Army tanks. She told me that ADA was the standard language for military hardware. Can anyone confirm or deny this?
- V_Terranova_Jr 5y agoThere was historically a push along these lines (Ada as official DoD language for the software on the systems it buys). I don't have the whole story as to when and how this stopped being a requirement (1990s?), or if it was ever a true requirement, but in U.S. DoD aerospace today, Ada is uncommon. I'm not sure of any new systems developed over the past 20 years that are based on Ada. Perhaps some of the avionics suppliers like Honeywell or Rockwell Collins that historically used Ada still do, but I don't think most aerospace prime contractors do today. The prevalent U.S. Government view is that the industrial entities that implement systems should have the latitude to decide what they want to use. For DoD systems, they would just be expected to have the DoD conduct reviews of their software/system design. [Sadly, such reviews vary wildly in their quality and how much companies' feet are held to any fire.] Keep in mind the FAA requirements for civil aircraft certification are different from DoD's airworthiness assessments. And then launch vehicles and spacecraft are assessed/certified on a different basis than aircraft.
- FpUser 5y agoI think they have a lead or two who were most comfortable doing it the way they like and this is all about it. If you have good software people just step away and do not tell them how to do their jobs.
- bdavis__ 5y agoi would say it is interesting they did not use ada. best language every designed for this problem domain.
- Fordec 5y agoCan't churn through engineers at the rate SpaceX do with Ada vs C++. They'd run out of replacement staff very quickly.