This past October saw the death of John McCarthy, one of the pioneers of computer science and a founder of the field of artificial intelligence (AI), a phrase he is credited with inventing. It capped a sad month that also saw the passing of Apple cofounder Steve Jobs and of Dennis Ritchie, the coinventor of Unix and the C programming language.
John McCarthy was born in Boston in 1927, but he grew up near Caltech, where he got his B.S. in mathematics. He detoured to Princeton for his Ph.D. but ended up at MIT, where he cofounded its artificial-intelligence lab, the world's first, before going on to Stanford in 1962 to found its artificial-intelligence lab.
In between, he found time to invent Lisp, one of the most influential programming languages ever created. McCarthy received computer science's highest honor, the Turing Award, in 1971, the Kyoto Prize in 1988, and the National Medal of Science in 1991. Just this year, he was inducted into IEEE Intelligent Systems' AI Hall of Fame, along with a fellow AIer, cognitive scientist Marvin Minsky.
McCarthy was probably the first person to seriously consider, in 1955, the question of self-awareness in machines, both as a computer science challenge and as a social issue. He also seems to have been the first to consider computation as a utility in the way that electricity is, an idea that first became time-sharing in the 1960s and lately shows itself in cloud computing [see "A Cloud You Can Trust," in this issue]. When others were focusing their machine-intelligence efforts on chess, McCarthy was working on natural language processing and what we now call robotics. John McCarthy was also an academic, writing dozens of papers in computer science and more than a few in mathematics, all the while overseeing computer science dissertations.
One of John's students, Ramanathan Guha, a former principal scientist at Apple who currently works at Google, had this to say about his thesis advisor when I spoke with him for my weekly IEEE Spectrum podcast "Techwise Conversations":
"The set of new things that Lisp introduced into the world of programming is so large that it's almost impossible to think of programming languages without the contributions of Lisp. Everything from conditionals, to recursion, to the idea of mutable data structures—yes, before McCarthy introduced them, programming languages did not even have the 'if..., then...' statement. And pretty much everything—as [programmer] Paul Graham once mentioned—everything that we have been slowly introducing into programming languages since then has been like somebody set up this trust fund of ideas, and we're slowly able to take things off of there. We've still not taken everything out of there. Even things like garbage collection came into mainstream commercial computing only in the mid-'90s. He had it back in the '60s. And he came up with the specification, and the beauty of the specification was that an entire programming language could be specified in half a page, and it was just stunning in its beauty. And I remember [pioneering computer scientist] Alan Kay telling me, if you ever create anything in your life, it needs to have the beauty of Lisp. The idea of beauty in computer science was something that John McCarthy brought into the picture….
"Being a student of John McCarthy was something like being exposed to a supernova at close range. He really, really pushed the boundaries in terms of thinking—people use the cliché 'thinking outside the box.' He didn't understand the word box. To him there was no problem that was outside his scope."
Listen to Steven Cherry's entire interview with Ramanathan Guha.
See also Katie B. Palmer's blog post.