A Review of John McCarthy's Original Lisp Paper

Under review is ``Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part
1'' by John McCarthy.  Information concerning it may be found in that menu linking to this document.

This is the paper defining Lisp, from which there was no second part.  Anyone interested by Lisp, or
simply wanting to learn some of computing's history, should read this brief document; I read it over
three days.  This paper begins with introducing definitions and notations.  Amusingly, John McCarthy
rightfully rejects combinators and similar things owing to complications, and instead introduces his
notation for such things as representing recursive functions, which is done with the familiar LABEL.

The third section of the paper introduces the symbolic expressions and the five basic functions that
manipulate them; also introduced are the rules for translating M-expressions to S-expressions, which
are followed by the definition of APPLY.  It's particularly interesting to look upon the notation of
M-expressions, as I recognized the original Lisp as quite an ugly thing, compared to its successors.

The final sections show the representation of S-expressions in the machine, alternative models which
could've been selected for symbolic expressions, and other curiosities.  Again, this paper shows the
value that comes from one man's ideas being taken in a different direction; several modern languages
resemble M-expressions, but they lack the power which using only S-expressions allows.  Also of note
is the Lisp system for the IBM 704 was designed for a real purpose, such as the Advice Taker system.

I find it particularly interesting that this original model for Lisp shuns circular list structures.

I may at a later point review the ``LISP 1.5 Programmer's Manual''.  Owing in part to limitations of
the available hardware, this early Lisp system was remarkably ugly; in any case, reading these parts
of computing history has been enlightening, and those aforementioned translation rules in particular
have helped in starting planned future work, regarding a similarly old system, with good beginnings.