Objects all the way down to the turtles

« previous post | next post »

James Iry, who ought to know, has written "A Brief, Incomplete, and Mostly Wrong History of Programming Languages". I don't believe that there's anything similar for natural languages, although John Cowan's "Essentialist Explanations" offers a wealth of raw material.

The start of it all:

1801 – Joseph Marie Jacquard uses punch cards to instruct a loom to weave "hello, world" into a tapestry. Redditers of the time are not impressed due to the lack of tail call recursion, concurrency, or proper capitalization.

1842 – Ada Lovelace writes the first program. She is hampered in her efforts by the minor inconvenience that she doesn't have any actual computers to run her code. Enterprise architects will later relearn her techniques in order to program in UML.

1936 – Alan Turing invents every programming language that will ever be but is shanghaied by British Intelligence to be 007 before he can patent them.

1936 – Alonzo Church also invents every language that will ever be but does it better. His lambda calculus is ignored because it is insufficiently C-like. This criticism occurs in spite of the fact that C has not yet been invented.

[Hat tip to Fernando Pereira.]


  1. John Cowan said,

    May 9, 2010 @ 8:12 pm

    Bits of this post are now in Essentialist Explanations, down near the end.

  2. mitcho said,

    May 10, 2010 @ 12:04 am

    This reminds me of the McCawley (1978): "Dates in the Month of May that Are of Interest to Linguists": http://specgram.com/LP/10.mccawley.may.html

  3. army1987 said,

    May 10, 2010 @ 3:49 am

    Some of the Essentialist Explanations are a heck of a lot more accurate than you'd imagine it'd ever be possible.

  4. Mark Liberman said,

    May 10, 2010 @ 6:04 am

    On the advice of Geoff Pullum and others, I've deleted all of the off-topic comments about Al Gore, climate skeptics, and the rest. If you're interested, the whole discussion is preserved here, but let's not continue it in this forum.

  5. Leonardo Boiko said,

    May 10, 2010 @ 7:01 am


    Japanese kanji are essentially Chinese hànzì as written by people who cannot pronounce or understand Chinese at all.

  6. Leonardo Boiko said,

    May 10, 2010 @ 9:05 am

    I suppose, for fairness, we should do our native languages, right?

    Portuguese is essentially a dialect of Spanish that managed to score an army and a navy.

    Portuguese is essentially heavily mutated vulgar soldier’s Latin, as spoken by prescriptive purists obsessed with “preserving the correct language”.

    Portuguese is essentially Spanish.

  7. Leonardo Boiko said,

    May 10, 2010 @ 9:17 am

    > Monolingual people should not be authorized to peruse this list. They would not understand anyway.

    What do you mean? It’s written in English, so they should have no problem.


  8. Sili said,

    May 10, 2010 @ 10:10 am

    Brazilian Portuguese is essentially Spanish.

  9. Leonardo Boiko said,

    May 10, 2010 @ 10:13 am

    Yes, European Portuguese is essentially Spanish as spoken by people who forgot how to pronounce vowels. But that one is already in the list.

  10. Jim Pryor said,

    May 10, 2010 @ 1:04 pm

    1924. Moses Schoenfinkel invents every programming language that will ever be, but is shanghaid by insanity and other unpleasantness.

    1927. Haskell Curry rediscovers what Shoenfinkel did.

    1936. Alonzo Church also invents every programming language that will ever be, in a way that's fundamentally the same, but more C-like, though not C-like enough.

    Later 1936. Alan Turing does some stuff.

    There, fixed that for you. Let the jokes continue.

  11. Paul Clarke said,

    May 10, 2010 @ 1:33 pm

    One I've heard (don't recall where) that isn't in the list: Portuguese is essentially Spanish that's been left out in the rain all night.

  12. Theodore said,

    May 11, 2010 @ 10:41 am

    "Lithuanian is essentially Latvian as spoken by Poles."

    "Romanian is essentially a Romance language trying really hard to blend in with the Slavic languages around it."


    Lithuanian is essentially a Baltic language insisting really strongly that it doesn't blend in with the Slavic languages around it.

  13. Robert Furber said,

    May 11, 2010 @ 12:57 pm

    A monad is a monoid in the category of endofunctors is something I myself frequently say. I don't know why people think monads are hard.

  14. John Cowan said,

    May 3, 2011 @ 2:55 pm

    And some of these comments are also now in Essentialist Explanations, now in its 15.1st edition.

RSS feed for comments on this post