Principia Mathematica: A Modern Classic on Programming Languages

Principia Mathematica is modern and insightful

Published in 1910, Whitehead and Russell's Principia Mathematica reads like a modern text on programming languages. It discusses extensionality, referential transparency, and types, and anticipates lambda-calculus with its propositional functions. The book's insistence on distinguishing 'any' from 'all' hints at intuitionism, and its 'incomplete symbols' foreshadow continuations. This review highlights these insights, noting that the book's real value lies in its foundational concepts, not its famous 1+1=2 proof.

The definition contains an analysis of a common idea, and may therefore express a notable advance.
  1. tristramb

    "Principia Mathematica is an odd book, worth looking into from a historical point of view as well as a mathematical one. It was written around 1910, and mathematical logic was still then in its infancy, fresh from the transformation worked on it by Peano and Frege. The notation is somewhat obscure, because mathematical notation has evolved substantially since then. And many of the simple techniques that we now take for granted are absent. Like a poorly-written computer program, a lot of Principia Mathematica's bulk is repeated code, separate sections that say essentially the same things, because the authors haven't yet learned the techniques that would allow the sections to be combined into one."

    - Mark Dominus (https://blog.plover.com/math/PM.html)

  2. WillAdams

    For an accessible introduction before beginning this, consider his _Introduction to Mathematical Philosophy_:

    https://en.wikipedia.org/wiki/Introduction_to_Mathematical_P...

    and for ease of reading see the various PDF versions at:

    https://people.umass.edu/klement/imp/

  3. radford-neal

    The notation for avoiding parentheses is interesting, and I've thought that it might be useful in programming languages.

    To illustrate, suppose you have a non-associative operator $. Rather than write a$(b$c), you can write a$.b$c - the . makes the $ before it be lower precedence on the right side. More dots make things be even lower precedence.

    So, for example,

    a$b .$: x$y .$. p$q

    means

    (a$b) $ ((x$y) $ (p$q))

    At least, that's my recollection. It's been over fifty years since I read (significant parts of) it...

  4. pngwen

    You might be interested in Kurt Goedel’s extended book review wherein he proves that Principia cannot do what it sets out to do, nor can any such system.

    I do teach PM when I teach theory of computation, but largely to tell the story of how we discovered the limits to computation.

  5. glimshe

    If you can read this book cover-to-cover, you're an absolute hero. Sometimes I wonder if they inserted a big logical error in the middle just to troll people under the assumption nobody would bother to read it.

  6. nitsuaeekcm

    For those who aren't familiar with the great but tragic story of Principia and Russell's quest for the foundation of math (spoiler: there is none), there's a really great graphic novel called Logicomix https://en.wikipedia.org/wiki/Logicomix

    I haven't read it in probably ten years, but it's one of those books and stories I spend an inordinate amount of time thinking about, for whatever reason.

  7. lordleft

    It blows my mind that Russell invented (formalized) types. Such an elemental concept, but so useful.

  8. d4rkp4ttern

    An interesting fact I learned while reading The Dream Machine[1], is that Principia was the basis of Newell, Simon and Shaw’s Logic Theorist (1956), considered to be the “first AI program”. Amusing and amazing to see this in the context of today’s Erdos-slaying LLMs.

    Quoting from Wikipedia:

    https://en.wikipedia.org/wiki/Logic_Theorist

    Logic Theorist is a computer program completed in 1956 by Allen Newell, Herbert A. Simon, and Cliff Shaw.[1] It was the first program deliberately engineered to perform automated reasoning, and has been described as "the first artificial intelligence program".[1][a] Logic Theorist proved 38 of the first 52 theorems in chapter two of Whitehead and Bertrand Russell's Principia Mathematica, and found a new and shorter proof for Theorem 2.85.[3]

    [1] https://press.stripe.com/the-dream-machine

More from this day

2026-08-13