## John McCarthy has passed

It is being reported that John McCarthy has passed. Here is an example article which I list only for confirmation of something I heard from a friend.

John McCarthy, the creator of the Lisp programming language and a pioneer in artificial intelligence, has died. He was 84.

I hope that LtU'ers will comment appropriately.

My personal and very indirect remembrance is quite simple: In the late 1980s, as a high school student fascinated by computers but with only limited access to any and with even more limited access to education about them -- I went trolling what bookstores I could find that might have something to offer. I was not rich but I could afford a few bucks to take a commuter train 40 miles to Boston. Once in Boston, I learned how to navigate to Cambridge, near Harvard. Once there I found the Harvard Coop. Once at the Coop I learned where to find textbooks. And there, very early on in my experience with computing, I found a reprint of the Lisp 1.5 manual. I recognized it as "dated" (even then) very quickly but I also was blown away by the presentation of (more or less) a meta-circular eval. The handling of m- vs. s-expressions also demystified for my then quite naive, unworldly self a lot about the nonthreatening, practical, and banal nature of many notational choices. I don't know... I'm certainly not the right person to sing the man's praises other than to say that his work touched my life in a big positive way that is hard to sum up.

## Comment viewing options

### Appropriately?

I thought of a joke about burying him in a bunch of nested parentheses, but I suspect it's too obvious, and not a fitting tribute for the father of AI. RIP.

### xkcd

RIP.

It's only a matter of time before someone links to these xkcd cartoons, so I may as well do it now:

http://imgs.xkcd.com/comics/lisp_cycles.png

http://imgs.xkcd.com/comics/with_apologies_to_robert_frost.png

### you forgot (xkvd)

you forgot:
lisp.jpg from xkvd

### Most excellent

"My God, it's full of CARs" - sublime!

### Some Lisp haiku ( originally

Some Lisp haiku ( written by Oliver Scholz ) posted in honour of John McCarthy

---
 On a cloudy day you hear the cons cells whisper: "We are lost and gone." 

 The file was open. flying in a sparrow stole a parenthesis 
---

### Pioneer and Visionary of AI

One more fallen giant. I am speech(act)less...

### The Great Ones are Leaving Us

Yet another one has left, after Robin Milner, Dennis Ritchie, Isaac Asimov, Arthur C. Clarke, and Steve Jobs. I remember having a friendly chat on models and reality with Robin Milner at the BCS 2008 conference in London.

### I wasn't aware that Robin

I wasn't aware that Robin Milner died. :(

### ditto

Ditto. Very sorry to hear it.

### Tribute to McCarthy

I think the best tribute to McCarthy is to notice the fact that his death still inspires debates. Senators, Representatives, sports stars all die and quite often their place in history is fixed they aren't characters worth of debate. It takes a truly great leader to be a generation or two past your productive years and inspire passion on either side. People debate the role of Henry VIII, no one debates Edward VI.

McCarthy's headstone can read, "I created the bridge between the platonic ideal of mathematics and the reality of digital computation". Not too shabby.

Very well said.

### Visionary

In the sixties, we were writing spaghetti code in assembler or FORTRAN. COBOL was liberating. The GOTO debate had not yet happened. 64K was BIG memory. But McCarthy had already done LISP (functions as values, [buggy] closures, one-entry-one-exit blocks, metacircular interpretation, garbage collection, ...) and put good things into Algol 60. Not to mention AI. Hard to believe.

### He is also responsible for the conditional expression

... as found in Algol 60 and consequently in C/C++/Java.

### He also pioneered formal correctness...

...McCarthy was also one of the authors of the first compiler correctness proof -- Correctness of a Compiler for Arithmetic Expressions.

### I wasn't around in those

I wasn't around in those days as you were, but McCarthy's work had a tremendous influence on my experience of programming, whether it was Lisp, Garbage Collection, AI, or one of his many other innovations. His influence was vast, equal to some recently deceased luminaries, (not in any way intended to discount their efforts either though) yet many people likely haven't heard of him.

Not to mention that he indirectly invented logic programming.

### honor him by studying his works

Since I want more folks to learn about Lisp, here's a hook that caught me in 1989: code and data use the same abstract syntax tree. So writing code to manipulate code is easy, and mixing code and data roles is simple. Changing your mind lacks effort.

I worked for a guy with a Lisp background who had been a lecturer at my school. When I wouldn't stop talking about dataflow programming as a technique, he said, "Did you know code and data have the same form in Lisp?" I replied: tell more. It sounded like opportunity.

I had no interest in Lisp because it was "neat" or would help fill a roster of programming languages I knew. I only cared about tactical consequences on code organization, which sounded like it would be different under Lisp.

Writing a storage system based on btrees, I wanted a declarative language to express data and behavior I wanted in tests. So I wrote an ad hoc interpreter for a list-based AST that looked like Lisp but wasn't, and results were so fun and effective I decided to look into proper Lisp in more detail, so I did.

New folks should learn Lisp out of pragmatic self interest, since you learn how to do useful things that otherwise seem too hard. And as a side effect, you can honor a brilliant man whose work is under appreciated largely because powerful abstractions have weaker results in systems too short of resources. Now we have resources, we leave power on the table without facile tools and abstraction.

### Anecdote...

Apart from tutoring Common Lisp for an AI subject and lecturing about Scheme as part of a programming paradigms course in the 90s, inspired by The Little Lisper I developed a Lisp system for the Newton PDA over a decade ago: LittleLisp.

It didn't have advanced features such as macros but was an enormous amount of fun to develop and play with.

In 2001 I was at a small AI conference at Stanford at which John McCarthy was part of a panel session. He chose to sat in the audience instead of up with the panel. :) I was close behind him when he left the room at the end of the session. As he was grabbing a pastry from the table outside the door in passing, I caught his eye, and said: "thanks", or something equally lame.

I wrote about Lisp's 50th and sent John a brief "congratulations" email, to which he politely responded.

### John McCarthy appreciation of Don Knuth

Earlier I posted a remembrance of John McCarthy in a comment on Lance Fortnow's blog. I'm grateful for Marco Morazan for leading a functional programming conference that gave me the opportunity to meet the gracious great man.