3 ms·
When people write code which doesn't have memory safety & lacks the compactness needed for a mature product, it is not C language's fault C is a well tested co
by srvmshr 4y ago
When people write code which doesn't have memory safety & lacks the compactness needed for a mature product, it is not C language's fault
C is a well tested compact language - the fact that Linux kernel, BSD kernels, device drivers and a whole lot of games and physics engines are written for performant systems is a testament to it's reliability.
Additionally, I think it's the sane move. A language which is hot cake today (Yes, Rust) may or may not be in fashion 5 years from now when there's a new hotcake. Choices are made keeping 10-15 years project development in mind
- pjmlp 4y agoWhen Michael Abrash wrote his books, C compilers weren't known for the quality of their blazing machine code. It also has a proven record that no matter what, exploits are bound to happen, making the whole industry turn into hardware memory tagging as the ultimate solution to fix C.
- srvmshr 4y agoMemory exploits in Rust : Yes much less. That's where the world is (hopefully) headed to. But then a lot of people would disagree on "Lets jump on the <new-hot-language> bandwagon ASAP". Even the transition to parts of Linux kernel components in Rust is slow and cautious. In that sense, C is still a wide choice. Plus there are a lot of people actively working on C. Rust is only but picking up. it's more likely people will write buggy code on a new language than something which has been around for a while.
- pjmlp 4y agoNo need to bring Rust into this talk, Modula-2 from 1978 would already sort out most of C's mistakes, or even JOVIAL from 1958. C became a forced choice thanks to UNIX's free beer, and like JavaScript with the Web, it tainted us all.