As an example, take this statement I hear all the time:

“C is a low level language.”

No. No it’s not. Not in any shape or form.

“It’s close to the hardware.” Nope. Computers haven’t worked that way in 30 years.

“I know exactly what my code is doing and when.” Nope. Well, in embedded, with *no* operating system, *maybe*

“I have more control.” Of what? Nvm. No you don’t, unless you’re switching from a GC’d language.

“It’s simpler.” No. Simple programs are simple. Complex programs are complex. If you think C is simple, then you haven’t done a big project in it.

Anyways, this is just an example - I’m not really hung up on language fans. I like C. My point is, none of this is true, but it is repeated endlessly by publishers and YouTubers.

Reply to this note

Please Login to reply.

Discussion

I have no idea why people use C outside of embedded. Seems like pointless self-flagellation, since C++ does more and most computers have so much memory that it doesn't matter.

I've actually only written somthing in C, but not C++, so maybe I'm just missing something really obvious.

C does seem more low-level to me, though. As in, it maps closer to what the hardware does. Python is just completely abstracted away, in comparison. You can just write garbage code and it runs, even if you have no clue what the computer is actually doing. The code looks like 40% of the information is missing and it sort of freaks me out.

They're actually using more and more C++ in embedded, now. Generated stuff from Simulink and whatnot.