Indeed, if memory serves (it's been a while since I read about this)...
The fly-by-wire flight software for the Saab Gripen (a lightweight fighter) went a step further. It disallowed both subroutine calls and backward branches, except for the one at the bottom of the main loop. Control flow went forward only. Sometimes one piece of code had to leave a note for a later piece telling it what to do, but this worked out well for testing: all data was allocated statically, and monitoring those variables gave a clear picture of most everything the software was doing. The software did only the bare essentials, and of course, they were serious about thorough ground testing.
No bug has ever been found in the "released for flight" versions of that code.
A quote from John Carmack on Inlined Code. I'm interested in hearing more about that style of programming, and any programming language that facilitates that style.
Recent comments
4 days 4 hours ago
4 days 8 hours ago
4 days 8 hours ago
22 weeks 5 days ago
27 weeks 11 hours ago
28 weeks 4 days ago
28 weeks 4 days ago
31 weeks 2 days ago
35 weeks 6 days ago
35 weeks 6 days ago