Languages / Language

1972

C

A portable assembler that ate the world.

C was written by Dennis Ritchie at Bell Labs around 1972, to solve a very concrete problem: Ken Thompson’s Unix was written in assembly and could not move between machines. C gave Unix a body it could travel in — by 1973 the kernel itself was rewritten in C, and the two have been inseparable ever since.

The pedigree

C did not appear from nowhere. Its family line descends straight from ALGOL: ALGOL 60 → CPL (Cambridge) → BCPL (Martin Richards) → B (Ken Thompson) → C (Dennis Ritchie). Each step shed weight. B was typeless; C added types and structures while keeping B’s blunt closeness to the machine.

Why it took over

C is often called a portable assembler: high enough to be structured, low enough that you can feel the hardware through it. Pointers, manual memory, and a tiny runtime meant it could go anywhere a compiler could be written — which turned out to be everywhere.

  • 1978: Kernighan and Ritchie publish The C Programming Language — “K&R” — the book that taught a generation, and quietly defined the language.
  • 1989: ANSI standardises it as C89 (C90 to ISO), and portability becomes a guarantee rather than a hope.

Its syntax is the ancestral home of C++, Objective-C, Java, C#, JavaScript, Go and more. When people say a language has “C-like syntax”, they mean this.

The people

Bell Labs had just walked away from the troubled Multics project, leaving Ken Thompson with a cast-off PDP-7 and an idea. In about three weeks in 1969 he wrote the first Unix on it — partly so he could run a game he had written called Space Travel — and Dennis Ritchie then gave that system a language so it could leave the single machine it was born on. Most of the software world traces back to that small, barely sanctioned project.

  • Dennis Ritchie — known everywhere as dmr — created C and co-created Unix. He was self-effacing to the point of near-invisibility, yet quietly authored the tools the modern world runs on. His guiding value was a hard-won simplicity: “UNIX is basically a simple operating system,” he said, “but you have to be a genius to understand the simplicity.” Turing Award, 1983.
  • Ken Thompson built Unix itself, and B — C’s direct parent — and much later Go and UTF-8. He is the archetypal minimalist hacker: regular expressions, the ed editor, and a famous instinct to “use brute force” when cleverness was not worth it. He shared the 1983 Turing Award with Ritchie.
  • Brian Kernighan did not design C, but co-wrote The C Programming Language and became its greatest teacher; his gift was clarity, making hard ideas feel obvious. He also named Unix and is the “k” in awk.

What made Bell Labs’ group different was the culture around them: no product deadlines, researchers free to build the tools they themselves wanted, and a shared taste for small pieces that compose. C is what that freedom produced.

Landmark open-source projects

Try it

#include <stdio.h>
int main(void) {
    puts("C: born at Bell Labs, 1972. Still everywhere.");
    return 0;
}

Sources

See also: Bell Labs, ALGOL, Erlang (whose BEAM VM is written in C).