3 ms·
>because it complicates the frequent use cases in order to simplify seldom encountered use cases. Putting complex logic in the three places of a for loop is so
by lowbloodsugar 3y ago
>because it complicates the frequent use cases in order to simplify seldom encountered use cases.
Putting complex logic in the three places of a for loop is something we all frown on now because of readability and bugs, but back then it was almost more common than just iterating from 1 to N. Same for dropping through case statements - frowned on now (rightly) because gotcha bugs, but used heavily.
>Making "*" a prefix operator in B and C was a mistake
C dominates for the same reason it is terrible: it gets shit done for some value of "shit". In this light, there are no mistakes. There are other languages that don't make these "mistakes" and, behold, nobody wrote the majority of the world's operating systems and software in them. I've used C when the viable options were hand-crafted assembly or C. There are no mistakes here, only practicalities.