The Origins Of T he C Programming Language

This article <https://arstechnica.com/features/2020/12/a-damn-stupid-thing-to-do-the-origins-of-c/> goes a bit more in-depth into the precursors of the C programming language. The story begins with a computer scientist from a well-connected family named Christopher Strachey (I remember the name of his uncle Lytton as the author of a volume of short biographies in my parents’ library called “Eminent Victorians”), who led a group to create a language called “CPL”. CPL proved a bit too ambitious to implement at the time. And it didn’t help that its designers insisted on certain syntactical niceties that might be considered more literary than practical. (Reflecting a certain British public-school background, I suppose ...) But a cut-down subset of this was implemented, with the aim of using it as a “bootstrap” language for writing the compiler for the full language. This was BCPL, and it turned out to be useful for a range of programming projects. The group at AT&T Bell Labs got hold of this after the Labs pulled out of the MULTICS project, and implemented an even more cut-down version called “B”, which could run on the limited memory of the PDP-7 which was all they had at the time. Then a later enhancement of this was called “New B” or “NB”. Several attempts were made to rewrite the fledgling Unix operating system in NB, which didn’t work. After each attempt, the language was revised to add more features. Finally, after the addition of structured types, the result was a language sufficiently useful to write an OS, and sufficiently different to warrant a new name. So it was dubbed “C”.
participants (1)
-
Lawrence D'Oliveiro