5 ms·
On the other hand C is simple language, there are no discussions about how to do something in C between people who know C. C is tedious but kernel programming
by lmilcin 5y ago
On the other hand C is simple language, there are no discussions about how to do something in C between people who know C.
C is tedious but kernel programming isn't about spewing vast amount of code anyway. It is more important to be able to read it, understand it and ascertain it is correct. This is one of main reasons for why C++ is not there.
- adwn 5y ago> C is simple language Except for, you know, all that Undefined Behavior stuff, which makes it practically impossible to write correct programs even for very skilled developers, or the lack of abstractions, which makes it hard to safely re-use advanced data structures. "C is a simplistic language" would be more accurate.
- VLM 5y agoC encourages simplicity. Code is either clear and simple, or extremely obscure and safe, or kinda in between is complicated but not complicated enough such that its not safe. "Simplicate and add lightness" aerospace mentality people like C. At some point any project expected to do ever more complicated tasks, like a kernel, will be unable to use simple C and will have to take the hit of a more complicated language. Simple is good when matched to simple tasks; my microwave oven or TV should ideally never data network with the external world and never malloc memory and never do string processing. C makes an amazing toaster or car automatic transmission controller.
- tremon 5y agoC is simple only as a pseudocode language, i.e. to reason about the happy flow. As soon as you start adding corner cases and error handling, all your happy flow code now gets obscured by numerous ifs, switches, and ($deity forbid) goto statements. Then, add pointers masquerading as output parameters, pointers masquerading as arrays, and pointers masquerading as pointers and your language isn't so simple anymore.
- ClumsyPilot 5y agoFlintlock pistols are simple, do you think they are more reliable or easier to use than an AK-47? Which one would you rather defend yourself with?
- pjmlp 5y agoC++ is definitly there, just not on Linux.