John McCarthy (computer scientist)

John McCarthy (September 4, 1927 – October 24, 2011) was an American computer scientist and cognitive scientist. He was one of the founders of the discipline of artificial intelligence. He co-authored the document that coined the term "artificial intelligence" (AI), developed the programming language family Lisp, significantly influenced the design of the language ALGOL, popularized time-sharing, and invented garbage collection.

McCarthy spent most of his career at Stanford University. He received many accolades and honors, such as the 1971 Turing Award for his contributions to the topic of AI, the United States National Medal of Science, and the Kyoto Prize.

Early life and education
John McCarthy was born in Boston, Massachusetts, on September 4, 1927, to an Irish immigrant father and a Lithuanian Jewish immigrant mother, John Patrick and Ida (Glatt) McCarthy. The family was obliged to relocate frequently during the Great Depression, until McCarthy's father found work as an organizer for the Amalgamated Clothing Workers in Los Angeles, California. His father came from Cromane, a small fishing village in County Kerry, Ireland. His mother died in 1957.

Both parents were active members of the Communist Party during the 1930s, and they encouraged learning and critical thinking. Before he attended high school, McCarthy became interested in science by reading a translation of 100,000 Whys, a Russian popular science book for children. He was fluent in the Russian language and made friends with Russian scientists during multiple trips to the Soviet Union, but distanced himself after making visits to the Soviet Bloc, which led to him becoming a conservative Republican.

McCarthy graduated from Belmont High School two years early and was accepted into Caltech in 1944.

He showed an early aptitude for mathematics; during his teens, he taught himself college math by studying the textbooks used at the nearby California Institute of Technology (Caltech). As a result, he was able to skip the first two years of math at Caltech. He was suspended from Caltech for failure to attend physical education courses. He then served in the US Army and was readmitted, receiving a BS in mathematics in 1948.

It was at Caltech that he attended a lecture by John von Neumann that inspired his future endeavors.

McCarthy completed his graduate studies at Caltech before moving to Princeton University, where he received a PhD in mathematics in 1951 with his dissertation "Projection operators and partial differential equations", under the supervision of Donald C. Spencer.

Academic career
After short-term appointments at Princeton and Stanford University, McCarthy became an assistant professor at Dartmouth in 1955.

A year later, he moved to MIT as a research fellow in the autumn of 1956. By the end of his years at MIT he was already affectionately referred to as "Uncle John" by his students.

In 1962, he became a full professor at Stanford, where he remained until his retirement in 2000.

McCarthy championed mathematics such as lambda calculus and invented logics for achieving common sense in artificial intelligence.

Contributions in computer science
John McCarthy is one of the "founding fathers" of artificial intelligence, together with Alan Turing, Marvin Minsky, Allen Newell, and Herbert A. Simon. McCarthy, Minsky, Nathaniel Rochester and Claude E. Shannon coined the term "artificial intelligence" in a proposal that they wrote for the famous Dartmouth conference in Summer 1956. This conference started AI as a field. (Minsky later joined McCarthy at MIT in 1959.)

In 1958, he proposed the advice taker, which inspired later work on question-answering and logic programming.

In the late 1950s, McCarthy discovered that primitive recursive functions could be extended to compute with symbolic expressions, producing the Lisp programming language. That functional programming seminal paper also introduced the lambda notation borrowed from the syntax of lambda calculus in which later dialects like Scheme based its semantics. Lisp soon became the programming language of choice for AI applications after its publication in 1960.

In 1958, McCarthy served on an Association for Computing Machinery ad hoc committee on Languages that became part of the committee that designed ALGOL 60. In August 1959 he proposed the use of recursion and conditional expressions, which became part of ALGOL. He then became involved with developing international standards in programming and informatics, as a member of the International Federation for Information Processing (IFIP) IFIP Working Group 2.1 on Algorithmic Languages and Calculi, which specified, maintains, and supports ALGOL 60 and ALGOL 68.

Around 1959, he invented so-called "garbage collection" methods, a kind of automatic memory management, to solve problems in Lisp.

During his time at MIT, he helped motivate the creation of Project MAC, and while at Stanford University, he helped establish the Stanford AI Laboratory, for many years a friendly rival to Project MAC.

McCarthy was instrumental in the creation of three of the very earliest time-sharing systems (Compatible Time-Sharing System, BBN Time-Sharing System, and Dartmouth Time Sharing System). His colleague Lester Earnest told the Los Angeles Times:

"The Internet would not have happened nearly as soon as it did except for the fact that John initiated the development of time-sharing systems. We keep inventing new names for time-sharing. It came to be called servers ... Now we call it cloud computing. That is still just time-sharing. John started it."

In 1961, he was perhaps the first to suggest publicly the idea of utility computing, in a speech given to celebrate MIT's centennial: that computer time-sharing technology might result in a future in which computing power and even specific applications could be sold through the utility business model (like water or electricity). This idea of a computer or information utility was very popular during the late 1960s, but had faded by the mid-1990s. However, since 2000, the idea has resurfaced in new forms (see application service provider, grid computing, and cloud computing).

In 1966, McCarthy and his team at Stanford wrote a computer program used to play a series of chess games with counterparts in the Soviet Union; McCarthy's team lost two games and drew two games (see Kotok-McCarthy).

From 1978 to 1986, McCarthy developed the circumscription method of non-monotonic reasoning.

In 1982, he seems to have originated the idea of the space fountain, a type of tower extending into space and kept vertical by the outward force of a stream of pellets propelled from Earth along a sort of conveyor belt which returns the pellets to Earth. Payloads would ride the conveyor belt upward.

Other activities
McCarthy often commented on world affairs on the Usenet forums. Some of his ideas can be found in his sustainability Web page, which is "aimed at showing that human material progress is desirable and sustainable". McCarthy was an avid book reader, an optimist, and a staunch supporter of free speech. His best Usenet interaction is visible in rec.arts.books archives. He actively attended SF Bay Area dinners in Palo Alto of r.a.b. readers, called rab-fests. He went on to defend free speech criticism involving European ethnic jokes at Stanford.

McCarthy saw the importance of mathematics and mathematics education. His Usenet .sig for years was, "He who refuses to do arithmetic is doomed to talk nonsense"; his license plate cover read, similarly, "Do the arithmetic or be doomed to talk nonsense." He advised 30 PhD graduates.

His 2001 short story "The Robot and the Baby" farcically explored the question of whether robots should have (or simulate having) emotions, and anticipated aspects of Internet culture and social networking that became increasingly prominent during ensuing decades.

Personal life
McCarthy was married three times. His second wife was Vera Watson, a programmer and mountaineer who died in 1978 attempting to scale Annapurna I Central as part of an all-women expedition. He later married Carolyn Talcott, a computer scientist at Stanford and later SRI International.

McCarthy declared himself an atheist in a speech about artificial intelligence at Stanford Memorial Church. Raised as a Communist, he became a conservative Republican after a visit to Czechoslovakia in 1968 after the Soviet invasion. He died at his home in Stanford on October 24, 2011.

Philosophy of artificial intelligence
In 1979 McCarthy wrote an article entitled "Ascribing Mental Qualities to Machines". In it he wrote, "Machines as simple as thermostats can be said to have beliefs, and having beliefs seems to be a characteristic of most machines capable of problem-solving performance." In 1980 the philosopher John Searle responded with his famous Chinese Room Argument, disagreeing with McCarthy and taking the stance that machines cannot have beliefs simply because they are not conscious. Searle argues that machines lack intentionality. A vast amount of literature has been written in support of one side or the other.

Awards and honors

 * Turing Award from the Association for Computing Machinery (1971)
 * Kyoto Prize (1988)
 * National Medal of Science (US) in Mathematical, Statistical, and Computational Sciences (1990)
 * Inducted as a Fellow of the Computer History Museum "for his co-founding of the fields of Artificial Intelligence (AI) and timesharing systems, and for major contributions to mathematics and computer science" (1999)
 * Benjamin Franklin Medal in Computer and Cognitive Science from the Franklin Institute (2003)
 * Inducted into IEEE Intelligent Systems' AI's Hall of Fame (2011), for the "significant contributions to the field of AI and intelligent systems"
 * Named as one of the 2012 Stanford Engineering Heroes

Major publications

 * McCarthy, J. 1959. . In Proceedings of the Teddington Conference on the Mechanisation of Thought Processes, 756–91. London: Her Majesty's Stationery Office.
 * McCarthy, J. 1960. . Communications of the ACM 3(4):184-195.
 * McCarthy, J. 1963a "A basis for a mathematical theory of computation". In Computer Programming and formal systems. North-Holland.
 * McCarthy, J. 1963b. Situations, actions, and causal laws. Technical report, Stanford University.
 * McCarthy, J., and Hayes, P. J. 1969. . In Meltzer, B., and Michie, D., eds., Machine Intelligence 4. Edinburgh: Edinburgh University Press. 463–502.
 * McCarthy, J. 1977. "Epistemological problems of artificial intelligence". In IJCAI, 1038–1044.
 * McCarthy, J. 1990. "Generality in artificial intelligence". In Lifschitz, V., ed., Formalizing Common Sense. Ablex. 226–236.
 * McCarthy, J. 1993. "Notes on formalizing context". In IJCAI, 555–562.
 * McCarthy, J., and Buvac, S. 1997. "Formalizing context: Expanded notes". In Aliseda, A.; van Glabbeek, R.; and Westerstahl, D., eds., Computing Natural Language. Stanford University. Also available as Stanford Technical Note STAN-CS-TN-94-13.
 * McCarthy, J. 1998. "Elaboration tolerance". In Working Papers of the Fourth International Symposium on Logical formalizations of Commonsense Reasoning, Commonsense-1998.
 * Costello, T., and McCarthy, J. 1999. "Useful counterfactuals". Electronic Transactions on Artificial Intelligence 3(A):51-76
 * McCarthy, J. 2002. "Actions and other events in situation calculus". In Fensel, D.; Giunchiglia, F.; McGuinness, D.; and Williams, M., eds., Proceedings of KR-2002, 615–628.
 * Costello, T., and McCarthy, J. 1999. "Useful counterfactuals". Electronic Transactions on Artificial Intelligence 3(A):51-76
 * McCarthy, J. 2002. "Actions and other events in situation calculus". In Fensel, D.; Giunchiglia, F.; McGuinness, D.; and Williams, M., eds., Proceedings of KR-2002, 615–628.