4 ms·
Wow, this is a spicy take but i'll go ahead and bite the bait. why on earth should i be angry that parenthesis are used to de-reference pointers? TFA doesn't
by snickerbockers 4y ago
Wow, this is a spicy take but i'll go ahead and bite the bait. why on earth should i be angry that parenthesis are used to de-reference pointers? TFA doesn't ever explain that part, it's just implied that I should be outraged somehow.
- kazinator 4y agoMotorola 68K assembly languages use parentheses that way, too. mov.b (a3), #42 or whatever.
- snickerbockers 4y agoyeah, that's why i'm so shocked at the OP's hatred for this type of notation. It's the standard notation on several other platforms so it shouldn't be too controversial that people want to use it on x86 too.
- anderskaseorg 4y agoThe article’s objection to “parenthesized nonsense” is about the nonsense, not the parentheses. 3(%edi,%ebx,8) is hiding a multiplication, two additions, and a memory access, in an order that you wouldn’t guess from the syntax.
- Taniwha 4y agoI think this is the "the first language I learned does X, everything that does Y is wrong" when in reality there are lots of different ways to do something and none of them are really 'right' - every thing is a set of compromises made by the person who wrote it that were made in context of the place and time they wrote it. For example: suppose I want to be able to unambiguously use the names of C globals in my assembler - I might insist that they all get extended with an initial '_' or I might insist that registers get a '%' prepended Or: many of my potential customers use IBM 029 card punches, I can't use [] to indicate indirection because they can't punch those characters, so I'll use () instead Or: people in the UK don't have a $ key, I'll use a # to indicate literals instead These are historical issues I've certainly had to deal with when designing long lived things