3 ms·
From my perspective, there is a certain truth to this. I started out as an assembler programmer in the early 80s, just a kid messing about with the machines of
by cesaref 4y ago
From my perspective, there is a certain truth to this. I started out as an assembler programmer in the early 80s, just a kid messing about with the machines of the time (Z80, 6510 based). There was BASIC on various machines, but it was slow and clunky, and you just didn't get enough control or speed to do the things that a kid in the 80s wanted to do (write games!).
When I first came across C, it was around the time i'd been writing 68k for the first time, and intel assembler was very confusing, and already had a heap of different models to consider.
So, C allowed the majority of stuff to be written once, with calls to library functions written in assembler. All of a sudden, we went from 0% portability to 95% portability. C could be written like assembler, basic types which map directly to registers and memory locations, and so really it was a simple step to write not great C, with obvious benefits.
The first non-C language I came across was Fortran, closely followed by Modula-2, and neither of these were in any way as close to what i'd been writing in assembler, and so didn't connect in the same way.
I don't think i'm unusual in this regard, transitioning from assembler to C. Of course these days there is a new generation of programmers who haven't that experience, and are happier with higher level abstractions, and so it must look weird to them to see the fascination with C, and it probably has outlived it's expected life - i'm certainly surprised we're not all functional by now for example.