4 ms·
Those are all good pragmatic reasons to use C. Doesn't make C any less of a mistake. A slightly higher semantic level would have spared us so many headaches.
by chaganated 6y ago
Those are all good pragmatic reasons to use C. Doesn't make C any less of a mistake. A slightly higher semantic level would have spared us so many headaches. To make the choices C made, after LISP, Algol, APL, Pascal... was a very costly punt.
- AnimalMuppet 6y agoAgain, I'm mostly coming from embedded systems. I can guarantee you that at least LISP and APL would be totally unsuitable there. They are very much not the languages to model on. Pascal was usable in embedded systems. It was used, even. But compared to C, it was like picking your nose with boxing gloves on. No, in my world at least, you don't want a "slightly higher semantic level". C got it far closer to right than any of the others, even Pascal.
- chaganated 6y agoDid I say embedded LISP or APL? No, I didn't. I did suggest that C could have learned a thing or two from them. A higher semantic level does not imply reduced performance. In many cases, a richer language can give the compiler more opportunities to optimize. Walter Bright's D is a good example of a slightly-higher semantic level that still generates speedy binaries. And a slow Pascal of yesteryear doesn't exactly put the nail in the coffin. C has also had its share of lame compilers.
- AnimalMuppet 6y agoIt's not because Pascal was slow that I said it was lousy. It's because it was clumsy to use.