Hacker News new | past | comments | ask | show | jobs | submit
The famous C dilemma: we want to be as close to the machine as possible, but don't want to change anything when the machine changes
Because contrary to urban myths, C is a normal high level language like everything else.

The Assembly like abilities have been growing as language extensions in specific compilers, not as part of ISO C.

Going back to K&R C, inline Assembly or intrisics were not even available, all of that required using the Assembler directly.

loading story #49255539
Except for the basic integer types. Change those as much as possible. Hell, CHAR_BIT=12 just to keep them on their toes.

Personal pet theory: C is portable as in "you can retarget the compiler to any machine" moreso than "your code will run on any machine".

so what they gonna do ??
COM-like C ABI saves C++
Previous submissions with comments:

- 2023-06-10, 64 points, 16 comments: (https://news.ycombinator.com/item?id=36249253)

- 2022-03-13, 175 points, 129 comments: (https://news.ycombinator.com/item?id=30660528)

Thousands of words that boil down to "intmax_t isn't ABI-stable". Who knew? (Everybody.)
loading story #49255298
loading story #49255624
But the industry ultimately runs on compatibility, so I get why they do it. But if compatibility breaks, wouldn't hardware vendors die out? If you look at PLC and other hardware manufacturers, they're not even using modern coding. They're still running on old code. They say it's 'safe and certified code,' but in reality, it's just legacy code.

Because in hardware, programmers, aside from researchers, are often paid much less and work in worse conditions compared to their software counterparts. At a software company, code is the product itself. But in manufacturing, software is treated as a cost attached to machines worth billions of dollars. While equipment and sensors keep getting updated and more expensive, the people connecting everything are seen as a cost cutting target. So hardware programmers generally have good job security, but their salaries aren't high. In that situation, asking them to learn something new instead of sticking with the old ways usually gets resistance, because they're not being properly compensated for that learning

loading story #49255140
Yeah, well, that didn't happen