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

@article{McCarthy1960RecursiveFO, title={Recursive functions of symbolic expressions and their computation by machine, Part I}, author={John McCarthy}, journal={Communications of the ACM}, year={1960}, volume={3}, pages={184 - 195} }

A programming system called LISP (for LISt Processor) has been developed for the IBM 704 computer by the Artificial Intelligence group at M.I.T. The system was designed to facilitate experiments with a proposed system called the Advice Taker, whereby a machine could be instructed to handle declarative as well as imperative sentences and could exhibit “common sense” in carrying out its instructions. The original proposal [1] for the Advice Taker was made in November 1958. The main requirement…

## 1,503 Citations

### The Evolution of Programming Languages

- Computer Science
- 1983

The purpose of this book is to study how high-level programming languages are designed to meet the needs of the human and the machine.

### Artificial languages: Computers, connector systems, and data descriptions

- Computer ScienceACM '62
- 1962

The resolution of this problem involves first the development of a notation that is sufficient for describing arbitrary connector systems and arbitrary computers, and then a method of using such descriptions to choose automatically, from among the repertoire of machine operations, sequences of instructions that optimally carry out the intent of operations defined over the connector system.

### Programming languages for non-numeric processing—2: An introduction to the COGENT programming system

- Computer Science, LinguisticsACM '65
- 1965

The COGENT (COmpiler and GENeralized Translator) programming system is a compiler whose input language is designed to describe symbolic or linguistic manipulation algorithms, and is also applicable to such problem areas as algebraic manipulation, mechanical theorem-proving, and heuristic programming.

### McCarthy’s LISP and Basis for Theory of Computation

- Computer Science
- 2015

McCarthy’s cast of LISP is highlighted “both as a programming language and as a formalism for doing [computable] function theory” and some elementary results in traditional theory of computation are mentioned.

### A Heuristic Program that Solves Symbolic Integration Problems in Freshman Calculus

- Computer ScienceJACM
- 1963

Some conclusions concerning computer solution of such problems are: pattern recognition is of fundamental importance, and the solution of a symbolic integration problem by a commercially available computer is far cheaper and faster than by man.

### The Architecture of Lisp Machines

- Computer ScienceComputer
- 1987

The authors enumerate the runtime requirements of a Lisp system and identify potential obstacles to good machine performance, and provide a classification of the Lisp machines that the authors encountered during the survey, and examine the techniques employed in these machines to cater to Lisp's runtime requirements.

### Programs=data=first-class citizens in a computational world

- Computer SciencePhilosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences
- 2012

The ‘blob’ MOC is described: a recent stored-program computational model without pointers that is Turing complete in a strong sense: a universal interpretation algorithm exists that is able to run any program in a natural way and without arcane data encodings.

### REC and Convert as aids in teaching Automata Theory ∗

- Computer Science
- 2004

An integrated program package for the study and simulation of several models of automatic computation: regular expressions, push-down automata, Markov algorithms, Turing machines, Post production systems and the LISP programming language is presented.

### Standard LISP (reprint)

- Computer ScienceSIGS
- 1969

This paper is an attempt to provide a uniform subset of LISP 1.5 and its variants as it exists today and is sufficiently restricted in form so that programs written in it can run under any LISPs system upwardly compatible with LISp 1.

### The LISP experience

- Computer Science
- 1988

This article exhibits programs that illustrate the power and simplicity of Lisp as a language for expressing the design and organization of com putational systems. Lisp, created in the late 1950s…

## References

SHOWING 1-9 OF 9 REFERENCES

### Preliminary report: international algebraic language

- GeologyCACM
- 1958

This appears to be a natural method for a 256 memory machine, if it had good indexing and looping features and the contribution of the left-hand term becomes proportionately large enough such that it alone might be used within accuracy limits after a certain number of digits are developed.

### Programs with common sense

- Philosophy
- 1960

Abstract : This paper discusses programs to manipulate in a suitable formal language (most likely a part of the predicate calculus) common instrumental statements. The basic program will draw…

### Programming the logic theory machine

- Computer ScienceIRE-AIEE-ACM '57 (Western)
- 1957

A companion paper has discussed a system, called the Logic Theory Machine (LT), that discovers proofs for theorems in symbolic logic in much the same way as a human does. It manipulates symbols, it…

### The calculi of lambda-conversion

- Physics
- 1941

The description for this book, The Calculi of Lambda Conversion. (AM-6), will be forthcoming.

### Manual, IBM Corporation, New York, Oct

- 15,
- 1956

### A finite list of characters is admitted

- A finite list of characters is admitted

### FORTRAN Programmer's Reference Manual, IBM Corporation

### SAMELS 0 N , International algebraic language , Preliminary Report

### John Mitchell's CS242 lecture note

- John Mitchell's CS242 lecture note