Re: LISP Metalanguage (Preston Briggs)
Thu, 23 Jan 1992 21:07:09 GMT

          From comp.compilers

Related articles
LISP Metalanguage (John C Slimick) (1992-01-19)
Re: LISP Metalanguage (1992-01-23)
Re: LISP Metalanguage (Michael Dyck) (1992-01-24)
| List of all articles for this month |

Newsgroups: comp.compilers
From: (Preston Briggs)
Keywords: LISP, Scheme, history
Organization: Rice University, Houston
References: 92-01-073
Date: Thu, 23 Jan 1992 21:07:09 GMT

"John C Slimick" <> writes:

>For those of us who learned our LISP from the 1.55 manual, there was a
>metalanguage used there for functions definition, which was known as
>"M-expressions". They unfortunately required the presence of the greek
>lambda character, which was not available on any keyboard then. When I had
>LISP in 1969 (from Bert Raphael) I had to do my notes and written
>assignments in M-expressions, my computer work in S-expressions, and (as a
>leavening agent) some homework in "dot expressions" (also in the LISP 1.55
>I was told by some of those in the know at that time that the
>S-expressions were temporary until LISP 2.0 came out, and then we would be
>programming in M-expressions from then on. The intent was to program in
>the metalanguage, but it didn't happen. ...
>[It is my impression that once people got used to S-expressions they
>realized that the advantages of directly using them was great enough that
>they pretty much bagged any metalanguage beyond macros and backquote.
>Lisp 2 was one of the early great pieces of vaporware. -John]

In a book called "History of Programming Languages" (really the final
proceedings of the 1st HOPL Conference held in 1978), in a paper called
_History of LISP_, McCarthy writes

[about the first implementation of LISP, Fall 1958 time-frame]
The programs to be hand-compiled were written in an informal
notation called M-expressions intended to resemble FORTRAN as
much as possible. [...] It was intended to compile from some
approximation to the M-notation, but the M-notation was never
fully defined, because representing LISP functions by LISP
lists became the dominate programming language when the
interpreter later became available. A machine-readable
M-notation would have required redefinition, because the
pencil-and-paper M-notation used characters unavailable on the
IBM 026 keypunch.

He also writes briefly about LISP 2, though more about the project's demise
than the language features. The bibliography list a couple of papers about
LISP 2. Unfortunately, they seem to be tech reports of the long defunct
Systems Development Corporation, one of the big players in the LISP 2

Another is

LISP 2 Specifications Proposal
R. W. Mitchell
SAIL Memo #21, 1964

Oh, here we go...

The LISP 2 Programming Language and System
Paul Abrahams, et al.
Proceeding of the Fall Joint Computer Conference, 1966

Of course, these are effectively prehistoric in terms of my personal
library, but perhaps others will be able to find them.

Preston Briggs

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.