4 ms·
I think it's the general pattern that's off, and that pattern may or may not apply in this case. The general pattern is that a developer builds up a lot of skil
by mwfunk 10y ago
I think it's the general pattern that's off, and that pattern may or may not apply in this case. The general pattern is that a developer builds up a lot of skill with one specific instance of a broad category of software: a programming language, an OS, an editor, a 3D graphics API, whatever. For one reason or another, they move to another instance in that category. The first time anyone does this, there's a natural tendency to try to make the new software conform to the patterns of the old software, without learning the idioms of the new software first.
Example: in college I had to work with some C code written by a professor who was apparently a Pascal diehard. He included a header in everything he wrote which #define'd Pascal keywords to their C equivalents:
#define BEGIN {
#define END }
...etc. I like Pascal just fine (Turbo Pascal 3.0 forever), but this just seemed belligerently pointless.
Eventually the person gets more acclimated to the second system on its own terms, and when the need arises to use a third system, they just go straight to learning the idioms of that system first, they don't try to make the third system conform to a previous system. I've got to think that the Pascal guy stopped using that header after a while, and didn't bother making a new one when circumstances made him move to a third language.
Anyway, so IMO that's the general pattern that people might think is off, because we've all had to deal with it in one form or another, but I don't think that's necessarily what's happening here.
- mrkgnao 10y agoI think bash was (is?) written in that kind of C.