Earlier quoted context omitted.
Using a more safer systems programming language like Modula-2 (1978), would prevent in regards to C: - Out-of-bonds array and string access - Implicit type conversions - Accessing null pointers - Using pointers for output parameters - Casting integers to invalid enumeration values - Incompatible casts between data types - Allocating less memory than actually required In Modula-2 anything that requires C like low leve…
What would the performance penalty be?
What many younger generation seem to miss is that in the 80's C compilers were pretty lame, most junior Assembly programmers could easily out perform them.
The current state of C compiler performance is the outcome of almost 40 years of research in compiler optimizations for C, not anything of the language itself.
Also for those that prefer "Performance trumps correctness" way of thinking, some compilers offered ways to disable those checks.
But for anyone that thinks "Performance trumps correctness" is worthwhile, I advise to read C.A.R Hoare Turing award speech about the responsibility of software engineers, Algol use by the industry and law, done in 1981.