Recursive functions of symbolic expressions and their computation by machine, Part I

John McCarthy. Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I. Communications of the ACM 3, pp.184–195. 1960.

The original Lisp paper from 1960, which opens:

A programming system called LISP (for LISt Processor) has been developed for the IBM 704 computer…

The paper then proceeds to lay out everything that’s since been built on: the basic constructs, the use of cons cells (pairs) as a data representation, the world’s first garbage collection algorithm, an equational semantics, and ideas for interpretation and compilation. It’s awesome, and humbling to read it and realise its age and the vision of computing it developed.

(Despite this paper being labelled Part I, incidentally, there isn’t a part II.)

(Part of the series An annotated Lisp bibliography.)