Skip to content
◈ALB Atlas

Recursive Functions of Symbolic Expressions Alive

Recursive Functions of Symbolic Expressions
KindPaper
Published1960
StatusAlive
AuthorsJohn McCarthy

The paper that introduced Lisp — conditional expressions, recursion, garbage collection, and eval() in one 34-page argument that theory could be a programming language.

Created by John McCarthy
Describes LISP

Published in Communications of the ACM in April 1960, the paper presented a mathematical formalism for computation over symbolic expressions — S-expressions, five elementary functions, and a universal eval written in the notation itself. It reads more like a recursion-theory paper than a language manual because that's what it was.

Steve Russell realized eval could be hand-coded in machine language, and Lisp the programming language was born — taking with it conditionals, recursion, dynamic typing, and garbage collection, each a first. McCarthy designed it for AI research; it became the second-oldest language still in use.