>>11106>Part of it is because making software is big work now. Some people get paid by how much software they write and not how well they write it.Strange. Why not let programming be run by priorities?
>I would also cite language choice as part of the reason for this. Compatibility and legacy uses help keep bad languages, made to make the programmer fungible and restricted, alive well past their expiration date and make what is one line in one language tens (or sometimes even hundreds) of lines in the languages most people actually use.And who decides when a language is obsolete? Consider COBOL. First released in 1959. Few updates. But do what it's supposed to do really good.
On the other hand we have C. First released in 1972. Lots of updates and deratives. If I get this right, it's a language where you can go almost as close to the hardware as you can with Assembly.
The reason that I mention these languages is because it's the only two I know, sorta. Two examples for comparision:
COBOL:
DISPLAY "What's your name?".
ACCEPT Name.
DISPLAY "Hello, " Name "!".
C:
printf("What's your name?\n");
scanf("%c", &Name);
printf("Hello, %c!", Name);
As you all can see, COBOL has a far more straightfoward way to accept data. It's also easy to define the exact length of a variable. As a matter of fact, it's mandatory. Name would look something like this:
01 Name PIC X(10).
And this mandatory precision is because COBOL is made for number crunching and report writing.
The most obvious difference between C and COBOL is that you can have multiple commands on a line as long as they end with a semicolon. This allows you to do more elegant code. Also obfuscated code.
With that said I must say that the question about what language is the best is a moot point. Both serve their purposes. Both are old but not obsolete.