5 ms·
This is a government development project. Do you really think they're getting the C++11 features that make writing C++ half-pleasant? It's more likely that some
by koenigdavidmj 10y ago
This is a government development project. Do you really think they're getting the C++11 features that make writing C++ half-pleasant? It's more likely that some PM tried to define a "sane subset of C++", with templates explicitly banned. Now they can't use STL containers or unique_ptr, and they're basically writing C with classes.
- duaneb 10y agoNASA basically uses the approach you patronize so easily. And while I'm not arguing that it's practical to take this approach, defensive coding techniques allow reliable code to be written in environments that wouldn't be considered safe today... like the Apollo Guidance Computer. So yea, I don't consider it useful to finger C++ when there were clearly many poor decisions made at all levels of the engineering stack.
- willtim 10y agoThe Apollo Guidance computer wasn't anywhere near the scale and complexity of the F35 software. I'm also fairly certain the Apollo mission did not pick their technologies based on "programmer availability".
- engi_nerd 10y agoI wish the source for "programmer availability" hadn't evaporated into the ether, because I'd love to see it. I wonder if it meant "The guys who know Ada are all furiously writing F-22 software" -- parenthetical aside, the F-22 was in flight testing and development during the same years that the F-35 project was getting underway, so there would have been high demand for people experienced with developing mission critical flight software -- "and therefore we have to go with the guys we can spare, who mostly know C++ or Java or something". Or did they mean "No one coming out of school knows Ada anymore so let's go with a more widely known language"?
- kps 10y agoAnd yet the Apollo Guidance Computer system famously failed during the Apollo 11 landing. The software met its spec, but the spec was wrong.
- pjmlp 10y agoThey are using this C++ dialect: http://www.jsf.mil/downloads/down_documentation.htm http://www.jsf.mil/downloads/down_documentation.htm
- koenigdavidmj 10y agoThat particular link is a 404.
- pjmlp 10y agoThis one is working, http://www.stroustrup.com/JSF-AV-rules.pdf http://www.stroustrup.com/JSF-AV-rules.pdf