21-07-2024, 01:37 PM
(This post was last modified: 21-07-2024, 01:41 PM by Mike Watterson.)
Developer, "Why did you do that? It makes no sense."
Ordinary user, "I always have."
Application crashes (and if DOS maybe even wipes disk!).
Modula-2 and C++ can be as efficient as C, or even assembler, and used properly, don't have buffer overflows. But C++ (against wishes of Strustrupp) could use C libraries and C Strings. Many people use C++ compilers and are still writing traditional C programs.
Buffer overflow and other evils are possible in Modula-2 also, even though you can avoid C style strings, can't assign anonymous types that seem to match and even when writing Generic Functions etc, using magic types, you might forget to query the array size, or make a mistake accessing it, and BANG.
My conclusion is that the language chosen won't "fix" poor programmers, and the best programmers can use terrible languages safely.. Though languages with no compiler, no enforced types, auto type conversion and no checkers are bad. So are server side text web pages with mix of server side Java, client side javascript, SQL, HTML programatically/database generated, and PHP are a disaster to debug.
Ordinary user, "I always have."
Application crashes (and if DOS maybe even wipes disk!).
Modula-2 and C++ can be as efficient as C, or even assembler, and used properly, don't have buffer overflows. But C++ (against wishes of Strustrupp) could use C libraries and C Strings. Many people use C++ compilers and are still writing traditional C programs.
Buffer overflow and other evils are possible in Modula-2 also, even though you can avoid C style strings, can't assign anonymous types that seem to match and even when writing Generic Functions etc, using magic types, you might forget to query the array size, or make a mistake accessing it, and BANG.
My conclusion is that the language chosen won't "fix" poor programmers, and the best programmers can use terrible languages safely.. Though languages with no compiler, no enforced types, auto type conversion and no checkers are bad. So are server side text web pages with mix of server side Java, client side javascript, SQL, HTML programatically/database generated, and PHP are a disaster to debug.







