??? 06/15/07 05:26 Modified: 06/15/07 05:33 Read: times |
#140816 - Just look at the body of work ... Responding to: ???'s previous message |
Jeff Post said:
Richard Erlacher said:
I think the reason 'C' is so popular is because it is widely used in educational institutions, heaven knows why. Pascal was designed for education, and it does that pretty well. 'C', on the other hand, discourages rigor and discipline, both of which are necessary for any useful work. On the contrary, C requires rigor and discipline precisely because it is so easy to shoot oneself in the foot. But which would you rather have, a car that can do 130 mph (whether you need it or not) and can accelerate like a bat out of hell, or a car with limiters that has a max speed of 20 mph and accelerates like grandma in her wheelchair? When I need a hotrod, I write in ASM and comment it liberally. I almost never sit down and start coding just because I have an idea. I document it first. If people wrote things in ASM rather than C++, or whatever, it wouldn't take Windows 3-5 minutes or even longer to respond to a keystroke or mouse click that should stop everything and respond immediately. Console commands should produce a response within no more than 1/30 second on the slowest computer that runs that OS. If everyone were disciplined enough to delay writing the code until the requirements were documented and signed, and then wrote the code to match the reuquirements... That's pretty much the definition of a good programmer, isn't it? And it applies no matter what language one uses. Then why do so many people think they can program without doing that? but too much code is written before the requirements are agreed upon and too little of that code is justified. That's the fault of ignorant PHBs, not programmers. ...its real effect was to convince me that 'C' was not a tool I'd find acceptable for use in professional-quality work, and that was because it disocurages rigor and discipline. See above. C encourages and requires discipline. Any "programmer" lacking discipline should not code in C, and IMHO should not code at all. On that last point, we are in full agreement! When we were setting up my ISP, I had to look at a lot of 'C' code written by people you'd have guessed were pretty good programmers, as they brought LINUX to the world and did pretty well at it. However, I found lots of problems, not with the executability, but with the maintainability. Some of the code had been removed and replaced, leaving the v0.01 comments in version 22.8, which came YEARS later. Syntax was impenetrable, probably because someone felt he had to avoid increasing the line count, and the code formatting wasn't pretty either. Documentation, where it existed, often omitted key words, such as NOT. Most of the "bad" useable code I've seen has been full of evidence of undisciplined and lazy practice. It's sad, but it's true. The problem is that writing code is already too easy when one is working in ASM. HLL's promise to make things easier, and, I suppose that with large programs, e.g. the IRS' automated examination system, or a really large, comprehensive operating system, the aid an HLL gives is of value, but not if it allows undisciplined individuals, those who lack the patience and discipline to do things properly, to sell the sort of rubbish we see every day. RE |