MIT is publishing a book that collects these classic papers:

Prior Analytics (∼350 BCE) By Aristotle

The True Method (1677) By Gottfried Wilhelm Leibniz

Sketch of the Analytical Engine (1843) By L. F. Menabrea, with Notes by the Translator, Ada Augusta, Countess of Lovelace

An Investigation of the Laws of Thought on Which Are Founded the Mathematical Theories of Logic and Probabilities (1854) By George Boole

Mathematical Problems (1900) By David Hilbert

On Computable Numbers, with an Application to the Entscheidungsproblem (1936) By Alan Mathison Turing

A Proposed Automatic Calculating Machine (1937) By Howard Hathaway Aiken

A Symbolic Analysis of Relay and Switching Circuits (1938) By Claude Shannon

A Logical Calculus of the Ideas Immanent in Nervous Activity (1943) By Warren McCulloch and Walter Pitts

First Draft of a Report on the EDVAC (1945) By John von Neumann

As We May Think (1945) By Vannevar Bush

A Mathematical Theory of Communication (1948) By Claude Shannon

Error Detecting and Error Correcting Codes (1950) By R. W. Hamming

Computing Machinery and Intelligence (1950) By Alan Mathison Turing

The Best Way to Design an Automatic Calculating Machine (1951) By Maurice Wilkes

The Education of a Computer (1952) By Grace Murray Hopper

On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem (1956) By Joseph B. Kruskal, Jr.

The Perceptron: A Probabilistic Model for Information Storage and Organization (1958) By Frank Rosenblatt

Some Moral and Technical Consequences of Automation (1960) By Norbert Wiener

Man–Computer Symbiosis (1960) By J. C. R. Licklider

Recursive Functions of Symbolic Expressions and Their Computation by Machine (1960) By John McCarthy

Augmenting Human Intellect: A Conceptual Framework (1962) By Douglas C. Engelbart

An Experimental Time-Sharing System (1962) By Fernando Corbató, Marjorie Merwin Daggett, and Robert C. Daley

Sketchpad (1963) By Ivan E. Sutherland

Cramming More Components onto Integrated Circuits (1965) By Gordon Moore

Solution of a Problem in Concurrent Program Control (1965) By Edsger Dijkstra

ELIZA—A Computer Program for the Study of Natural Language Communication between Man and Machine (1966) By Joseph Weizenbaum

The Structure of the “THE”-Multiprogramming System (1968) By Edsger Dijkstra

Go To Statement Considered Harmful (1968) By Edsger Dijkstra

Gaussian Elimination is Not Optimal (1969) By Volker Strassen

An Axiomatic Basis for Computer Programming (1969) By C. A. R. Hoare

A Relational Model of Large Shared Data Banks (1970) By Edgar F. Codd

Managing the Development of Large Software Systems (1970) By Winston W. Royce

The Complexity of Theorem-Proving Procedures (1971) By Stephen A. Cook

A Statistical Interpretation of Term Specificity and Its Application in Retrieval (1972) By Karen Spärck Jones

Reducibility among Combinatorial Problems (1972) By Richard Karp

The Unix Time-Sharing System (1974) By Dennis Ritchie and Kenneth Thompson

A Protocol for Packet Network Intercommunication (1974) By Vinton Cerf and Robert Kahn

Programming with Abstract Data Types (1974) By Barbara Liskov and Stephen Zilles

The Mythical Man-Month (1975) By Frederick C. Brooks

Ethernet: Distributed Packet Switching for Local Computer Networks (1976) By Robert Metcalfe and David R. Boggs

New Directions in Cryptography (1976) By Whitfield Diffie and Martin Hellman

Big Omicron and Big Omega and Big Theta (1976) By Donald E. Knuth

Social Processes and Proofs of Theorems and Programs (1977) By Richard DeMillo, Richard Lipton, and Alan Perlis

A Method for Obtaining Digital Signatures and Public-Key Cryptosystems (1978) By Ronald Rivest, Adi Shamir, and Len Adleman

How to Share a Secret (1979) By Adi Shamir