On Apr 30, 2016, at 9:39 AM, Diane Bruce <db at
db.net> wrote:
Now wait a minute here. C is a very old language. When it was first written
as a recursive descent compiler, compiler technology was very primitive.
K&R style code with primitive compilers pretty much resulted in high level
assembler. Look at the keyword 'register' and the rationale given for it.
Now on that we furiously agree. One problem has been getting that through
to people who insist that C is still a high level assembler and has
not changed from the time when it was a hand crafted recursive descent
LR to the modern compiler with all the lovely optimisations we can do.
Diane
--
- db at
FreeBSD.org db at
db.net http://www.db.net/~db
A good example from my area of vintage computing enthusiasm is the Misosys C Compiler for
the TRS-80. It will compile pure K&R C into intermediate assembly language files that
you would then feed into the Misosys MRAS assembly language development system just as if
you were developing the assembly from scratch. Of course, the entire process is deathly
slow on original hardware and the level of optimization is no where near what you could
achieve with hand-written assembly, both of which are critical concerns on 2 Mhz Z80
systems for any non-trivial applications.
https://archive.org/details/MC_C-Language_Compiler_1985_sys_PDF