From mboxrd@z Thu Jan 1 00:00:00 1970 From: lars@nocrew.org (Lars Brinkhoff) Date: 06 Sep 2002 10:56:07 +0200 Subject: [pups] bringing up the fist C compiler In-Reply-To: <200209060814.g868Ep109493@minnie.tuhs.org> References: <200209060814.g868Ep109493@minnie.tuhs.org> Message-ID: <854rd3mr88.fsf@junk.nocrew.org> Warren Toomey 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