3 ms·
It's just not that difficult to avoid segfaults, signed integer overflow, all the usual Mr. Hyde aspects of C. There's nothing godlike about it - it's just pra
by ArkyBeagle 10y ago
It's just not that difficult to avoid segfaults, signed integer overflow, all the usual Mr. Hyde aspects of C.
There's nothing godlike about it - it's just practice. He's been using C for 20+ years. So that's probably 10+ years of very little or no Bad UB Voodoo.
- kbenson 10y ago> He's been using C for 20+ years. So that's probably 10+ years of very little or no Bad UB Voodoo. The implication being that it takes nearly 10 years of C programming experience to get to the point where there's very little or no bad UB voodoo? I guess as long as we only let 10-year veterans of C write programs in it, we're fine then. We can solve how to deal with the fact nobody else if getting experience in C anymore because they aren't allowed to write in C later...
- ArkyBeagle 10y agoI meant very probably. Surely it takes less than that.
- kbenson 10y agoSure, but 10 years is a large enough time that "less than that" can be half, it it's still rather long. There's something to be said for languages that change the effects of poor choices from security problems and inefficiencies to mostly just inefficiencies. Nobody is born knowing how to program, so all programmers have to go through a phase where they don't have the knowledge or experience to make the correct choice in every situation. Every language will have some percentage of its user base subject to this more or less. Another way to think of it is herd immunity. The more we can gently guide and gently admonish these nascent programmers for doing things that are probably a bad idea, the more we can protect everyone else, the public and other programmers alike, from most their bad choices until they've learned when it's appropriate to break those rules.