4 ms·
> <sarcasm>Too bad those shitty engineers in the 70s didn't think of Rust...</sarcasm> True, Rust didn't exist back then, and yes, some (few!) features in Rust
by jabl 6y ago
> <sarcasm>Too bad those shitty engineers in the 70s didn't think of Rust...</sarcasm>
True, Rust didn't exist back then, and yes, some (few!) features in Rust weren't invented and worked out then, like the ownership model.
OTOH the corollary to that statement isn't that C was some shining beacon of good design taking advantage of the then state of the art programming language knowledge. See e.g. https://pastebin.com/UAQaWuWG https://pastebin.com/UAQaWuWG
- rualca 6y agoThat pastebin leaves out the fact that C's spartan approach and extreme simplicity allowed C to become the most popular programming language in the world already in the time of K&R, a book still renowned for it's clarity and low mental baggage required to onboard onto a programming language. The pastebin also left out that Bjarne Stroustrup developed C with classes, and the C, as a backward compatible superset of C to take advantage of C's unrivaled popularity. We all can agree that the science and art behind programming language design progressed a lot in the four decades where we enjoyed C. However, it feels a kin to rewriting history to depict C as a subpar language that was poorly designed and had little to no redeeming qualities, when facts speak for themselves.
- titzer 6y agoC was not extremely simple. Lisp was extremely simple.
- Koshkin 6y agoProblem was, real world programming in Lisp was not simple.
- ku-man 6y ago"Problem is, real world programming in Lisp is not simple" is also correct.
- pjmlp 6y agoJust like real world programming in C is hardly memory corruption free, and only around 10% of survey answers keep asserting to use any kind of memory assurance tooling.
- jabl 6y agoThe other 90% are the better than average programmers who don't need such training wheels. /s
- jabl 6y ago> However, it feels a kin to rewriting history to depict C as a subpar language that was poorly designed and had little to no redeeming qualities, when facts speak for themselves. It was subpar compared to the state of the art then. It's redeeming quality was that it worked on the PDP-11, whereas the better languages required mainframe level resources. The tragedy isn't that C was invented, it fitted it's niche back then. The tragedy is that as HW evolved the world remained stuck with C rather than switching to better languages.
- Koshkin 6y agoActually, computer science in general and the theory of programming languages in particular were already very advanced back in the 60s. It’s just people thought little of languages that would have needed gigabytes of memory (or days of run time) for the compiler to do its job.
- jabl 6y agoThat's exactly the point the pamphlet I linked to makes. C was far from the state of the art when it was invented, it's only major redeeming quality was that it worked on the shit low-end computers that were available to the inventors back then. The tragedy wasn't that C was invented, it was fit for purpose then. The tragedy was that as HW evolved beyond the PDP-11 level, unix programming remained stuck at C.