ABSTRACT

The features of a programming language can help or hinder its use in developing a safe product. With testing becoming less effective with the increase in the size of the state space of programs, static checking is becoming more important. It would be nice if programming languages made static checking more efficient, but, for most languages, this was not a goal in their design. One of the arguments that will probably form part of the safety case is that the level of field usage provides a certain level of confidence in a compiler. For the GNU C compiler, a vast history of usage and error reports exist; for other languages, such as DD programming language and RUST, RUST that level of “confidence from use” may not yet be available. The question of what is the best programming language to use for the development of a safety-critical, embedded device is a perennial topic in both Internet and face-to-face discussion groups.