[pups] bringing up the fist C compiler
Lars Brinkhoff
lars at nocrew.org
Fri Sep 6 18:56:07 AEST 2002
Warren Toomey <wkt at minnie.tuhs.org> writes:
> The chist paper doesn't mention NB, which was the missing link between
> B and C.
How about this?
In 1971 I began to extend the B language by adding a character type
and also rewrote its compiler to generate PDP-11 machine instructions
instead of threaded code. Thus the transition from B to C was
contemporaneous with the creation of a compiler capable of producing
programs fast and small enough to compete with assembly language. I
called the slightly-extended language NB, for `new B.'
[...]
After creating the type system, the associated syntax, and the
compiler for the new language, I felt that it deserved a new name;
NB seemed insufficiently distinctive. I decided to follow the
single-letter style and called it C, leaving open the questing
whether the name represented a progression through the alphabet or
through the letters in BCPL.
> I seem to recall a story where there was an NB interpreter and also
> a compiler, and Ken kept adding functionality to one which made it
> slower, and this had a knock-on effect.
Maybe this?
After the TMG version of B was working, Thompson rewrote B in itself
(a bootstrapping step). During development, he continually struggled
against memory limitations: each language addition inflated the
compiler so it could barely fit, but each rewrite taking advantage
of the feature reduced it size.
--
Lars Brinkhoff http://lars.nocrew.org/ Linux, GCC, PDP-10,
Brinkhoff Consulting http://www.brinkhoff.se/ HTTP programming
More information about the TUHS
mailing list