# 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… Expand

#### 1,490 Citations

Artificial languages: Computers, connector systems, and data descriptions

- Computer Science
- ACM '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. Expand

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. Expand

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

- Computer Science
- ACM '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. Expand

McCarthy’s LISP and Basis for Theory of Computation

- 2015

It is well-known that LISP is an algebraic listprocessing language designed for artificial intelligence, dedicated to symbolic computation, powered by function orientation, enhanced by program… Expand

A Heuristic Program that Solves Symbolic Integration Problems in Freshman Calculus

- Mathematics, Computer Science
- JACM
- 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. Expand

The Architecture of Lisp Machines

- Computer Science
- Computer
- 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. Expand

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

- Mathematics, Medicine
- Philosophical 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. Expand

REC and Convert as aids in teaching Automata Theory ∗

- 2004

The programming languages REC and Convert, designed in México two and a half decades ago, have matured in recent years as symbol manipulation languages implemented on a variety of microcomputers. In… Expand

Automatic reduction of cuch expression by means of the value method

- Mathematics
- 1968

The first part of this paper is an introduction to CUCH, a formal language created in 1962 by merging the A-formulae language (A. Church) and the combinators language (H. B. Curry). The second part… Expand

Standard LISP (reprint)

- Computer Science
- SIGS
- 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. Expand

#### References

SHOWING 1-10 OF 22 REFERENCES

Preliminary report: international algebraic language

- Computer Science
- CACM
- 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. Expand

Programs with common sense

- Computer Science
- 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… Expand

Programming the logic theory machine

- Computer Science
- IRE-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… Expand

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

The Calculi of Lambda-Conversion (Princeton

- 1941

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

- Computer Science
- 1960

International algebraic language, Preliminary Report

- Comm. Assoc. Comp. Mach
- 1958

K

- SAMELS0N, International algebraic language, Preliminary Report, Comm. Assoc. Comp. Mach., Dec.
- 1958

LSON, International algebraic language, Preliminary Report, Comm

- Assoc. Comp. Mach., Dec.
- 1958