MISRA C: Write safer, clearer C code
Embedded developers often bemoan the fact that no programming language is ideal for their particular needs. In a way, this situation is unsurprising, because, although a great many developers are working on embedded applications, they are still only quite a small subset of the world’s programming community. Nevertheless, some languages have been developed with embedded in mind. Notable examples are PL/M, Forth and Ada, all of which have been widely used, but never universally accepted. Other languages, like Rust are gaining support, but are not yet mainstream. The compromise, that has been adopted almost universally, is C. How can that compromise be made to work most effectively?
I have long felt that MISRA C is a great way to constrain developers’ use of C resulting in safer code, which has application way beyond its origins in automotive systems. I served on the MISRA C Working Group for a number of years.