Programming languages: history and fundamentals (1969 book)

Jean Sammet’s 1969 book surveys a surprising number of high level languages (from a US perspective.) Free to read on the Internet Archive. And it has a great cover!

Book page image

A reference for higher level programming languages from the perspective of 1967-1969, covering all major and most minor languages developed in the United States. Outlines the general, technical, and non-technical characteristics of languages, used in a consistent treatment of over 100 languages.

There is a software crisis, or one looming:

Since we have had new computer generations roughly every 5 years and since the engineers seem to be able to design bigger and faster machines more rapidly than the programmers can keep them occupied, it is clear that the number of programmers, or at least programmer productivity, must be significantly improved. There are generally conceded to be two approaches to improving this productivity. One is to give the professional programmer better tools with which he can perform his work; whether these tools are better languages, better subroutine packages, or on-line systems, is almost irrelevant.

And here’s an analogy we no longer see very much:

I must again use the oft-quoted analogy with the telephone company. It has been said that if the telephone company had not gone to dial telephoning, then every woman between the ages of 20 and 50 would have been forced to become a telephone operator in order to keep up with the demands.

Note that the book predates developments such as Prolog, Pascal, Smalltalk.

From the final chapter, again:

to use an adding machine, a slide rule, or any other tool, a person must learn how to operate it. One can consider three major levels of ease (or lack thereof) of usage. The first is direct usage of machine language, even through a symbolic assembly program. The second is through the use of artificial languages of the type discussed in this book. The third is through a language which is natural to the user. It seems to me that the third choice is by far the most desirable course.

As true now as then, but in support of an argument for programming in natural language, not for increased public understanding:

most people are today using equipment whose inner workings they do not understand at all; it is a rare and unusual person who knows very much about what goes on under the hood of a car, inside a television set, or even inside something as simple as a toaster.

(As mentioned in the HN discussion linked from The Joy of Computer History Books)


I bought this book because of that cover. :slight_smile: It’s right behind me right now, underneath a copy of Guy Steele’s Common Lisp: The Language 2nd ed.

It has an significant number of languages that I’ve never heard of, some of which I suspect were never used outside of a single institution or lab. In fact, the description in this book might be the best description written for some of those languages. :wink: