Index  Comments

Under review is ``Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part 1'' by John McCarthy. It may be found here.

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.