Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!rpi!uupsi!cmcl2!lanl!lambda!jlg From: jlg@lambda.UUCP (Jim Giles) Newsgroups: comp.lang.c Subject: Re: Language wars (was Re: 48 forgeries) Message-ID: <14289@lambda.UUCP> Date: 23 Mar 90 21:19:56 GMT References: Distribution: comp Lines: 31 From article , by rowe@cme.nist.gov (Walter Rowe): > [...] > This IS pretty nasty. However, C doesn't have to be "hacky", nor does > any other language. "A chain is only as strong as its weakest link", > and a language is only as good as the programmer using it. ^^^^ I've been staying out of this thread, but the above invalid argument is used too often in defence of mediocre language design. The main problem is the highlighted word. The correct analogy with the 'chain' statement is: "A language is, _at best_, as good as the programmer using it." Even _VERY_ good programmers can be effected (for good or ill) by the language being used. In the book, "The Right Stuff", it was pointed out that every time a test pilot was killed in a test, the other test pilots would place the blame on the _man_ and not the _machine_. It was always something like: "old Joe was a fair pilot, but this time he screwed the pooch." Now, we all know that some of these early jets were deathtraps and that blaming the machine was the correct interpretation of most of those crashes. Well, C programmers tend to have the same 'test pilot' mentality. If someone has problems with a language feature it's never the fault of the language design. But the fact of the matter is that C has a number of things in it which even Dennis Ritchie would probably do differently if he got a second chance. So, while it _may_ be possible to 'fly' C without the 'wings' comming off, it is also true that the 'wings' should have been more sturdy to begin with. J. Giles