History
of Programming
Languages-II
Edited by
THOMAS J. BERGIN, JR.
and
RICHARD G. GIBSON, JR.
The American University
Washington, D.C.
ACM Press
N e w York, N e w York
VV
Addison-Wesley Publishing Company
Reading, Massachusetts • Menlo Park, California • N e w York
Don Mill, Ontario • Wokingham, England • Amsterdam • Bonn
Sydney • Singapore • Tokyo • Madrid • San Juan • Milan • Paris
www.it-ebooks.info
This book is published as part of ACM Press Booksma collaboration between the
Association for C.omputing (ACM) and Addison-Wesley Publishing Company.
ACM is the oldest and largest educational and scientific society in the information
technology field. Through its high-quality publications and services, ACM is a
major force in advancing the skills and knowledge of IT professionals throughout
the world. For further information about ACM, contact:
ACM European Service Center
108 Cowley Road
Oxford OX41JF
United Kingdom
Phone: +44-1865-382338
Fax: +44-1865-381338
E-mail:
[email protected]
URL: http://www.acm.org
ACM Member Services
1515 Broadway, 17th Floor
New York, NY 10036-5701
Phone: 1-212-626-0500
Fax: 1-212-944-1318
E-mail:
[email protected]
Library of Congress Cataloging-in-Publication Data
History of programming languages / edited by Thomas J. Bergin, Richard G. Gibson.
p. cm.
Includes biblio[;raphical references and index.
ISBN 0-201-89502-1
1. Programming languages (Electronic computers)--History.
I. Bergin, Thoma:~ J. II. Gibson, Richard G.
QA76.7.H558 1!)96
95-33539
005.13'09--dc20
CIP
Copyright © 1996 by ACM Press, A Division of the Association for Computing
Machinery, Inc. (ACM).
All rights reserved. No part of this publication may be reproduced, stored in a
retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior permission of the
publisher. Printed in the United States of America.
1 2 3 4 5 6 7 8 9 10-MA-009989796
www.it-ebooks.info
CONTENTS
Editors' Introduction
General Introduction
Development of the HOPL-II Program
Acknowledgments
vii
ix
xi
xvi
The Opening Session
CONFERENCE CHAIRMAN'S OPENING REMARKS, John A. N. Lee
LANGUAGE DESIGN AS DESIGN, Frederick R Brooks, Jr.
FROM HOPL TO HOPL-II (1978-1993): 15 Years of Programming
Language Development, Jean E. Sammet
MAKING HISTORY, Michael S. Mahoney
16
25
ALGOL 68 Session
A HISTORY OF ALGOL 68, C. H. Lindsey
Transcript of Presentation, C. H. Lindsey
Transcript of Question and Answer Session
Biography of C. H. Lindsey
III
Pascal Session
RECOLLECTIONS ABOUT THE DEVELOPMENT OF PASCAL, N. Wirth
Transcript of Disscussant's Remarks, Andrew B. Mickel
Transcript of Question and Answer Session
Biography of Niklaus Wirth
IV
27
84
95
96
97
111
117
119
Monitors and Concurrent Pascal Session
MONITORS AND CONCURRENT PASCAL:
A PERSONAL HISTORY, Per Brinch Hansen
Transcript of Question and Answer Session
Biography of Per Brinch Hansen
121
171
172
iii
www.it-ebooks.info
CONTENTS
V
Ada Session
ADAmTHE PROJECT: The DoD High Order Language Working Group,
William A. Whitaker, Colonel USAF, Retired
Transcript of Discussant's Remarks, John B. Goodenough
Biography of William A. Whitaker, Col. USAF, Ret.
VI
Lisp Session
THE EVOLUTION OF LISP, Guy L. Steele Jr.and Richard P. Gabriel
Transc~ript of Presentation, Guy L. Steele Jr. and Richard P. Gabriel
Transc~ript of Discussant's Remarks, John Foderaro
Transc;ript of Question and Answer Session
Biographies of Guy L. Steele Jr. and Richard P. Gabriel
VII
331
352
364
366
366
Discn~te Event Simulation Languages Session
A HISTORY OF DISCRETE EVENT SIMULATION PROGRAMMING
LANGUAGES, Richard E. Nance
Transc~ript of Presentation, Richard E. Nance
Transc~ript of Question and Answer Session
Biography of Richard E. Nance
IX
233
309
326
328
329
Prolog Session
THE BIRTH OF PROLOG, Alain Colmerauer and Philippe Roussel
Transc~ript of Presentation, Alain Colmerauer
Transc~ript of Discussant's Remarks, Jacques Cohen
Transc~ript of Question and Answer Session
Biographies of Alain Colmerauer and Philippe Roussel
VIII
173
229
231
369
413
426
427
FORMAC Session
THE BEGINNING AND DEVELOPMENT OF FORMAC
(FORmula MAnipulation Compiler), Jean E. Sammet
Transc~ript of Presentation, Jean E. Sammet
Transc~ript of Discussant's Remarks, Joel Moses
Transc=ript of Question and Answer Session
Biography of Jean E. Sammet
iv
www.it-ebooks.info
429
456
465
468
468
CONTENTS
X
CLU Session
A HISTORY OF CLU, Barbara Liskov
Transcript of Presentation, Barbara Liskov
Transcript of Question and Answer Session
Biography of Barbara Liskov
Xl
Smalltalk Session
THE EARLY HISTORY OF SMALLTALK, Alan C. Kay
Transcript of Presentation, Alan C. Kay
Transcript of Discussant's Remarks, Adele Go/dberg
Transcript of Question and Answer Session
Biography of Alan C. Kay
Xll
599
622
623
Forth Session
THE EVOLUTION OF FORTH, Donald R. Co/burn, Charles H. Moore,
and Elizabeth D. Rather
Transcript of Presentation, Elizabeth D. Rather
Transcript of Question and Answer Session
Biographies of Elizabeth Rather, Donald R. Colburn,
and Charles H. Moore
XIV
511
579
589
596
597
Icon Session
HISTORY OF THE ICON PROGRAMMING LANGUAGE,
Ralph E. Griswold and Madge T. Griswold
Transcript of Question and Answer Session
Biographies of Ralph E. Griswold and Madge T. Griswold
Xlll
471
497
508
510
625
658
668
669
C Session
THE DEVELOPMENT OF THE C PROGRAMMING LANGUAGE,
Dennis M. Ritchie
Transcript of Presentation, Dennis Ritchie
Transcript of Question and Answer Session
Biography of Dennis M. Ritchie
www.it-ebooks.info
671
687
696
698
CONTENTS
XV
C++ Session
A HISTORY OF C++: 1979-1991, Bjame Stroustrup
Transcript of Presentation, Bjarne Stroustrup
Transcript of Question and Answer Session
Biography of Bjarne Stroustrup
XVI
699
755
764
769
Forum ,on the History of Computing (April 20, 1993)
ISSUES IN THE HISTORY OF COMPUTING, Michael S. Mahoney
ARCHIVES SPECIALIZING IN THE HISTORY OF COMPUTING,
Bruce H. Bruemmer
THE ROLE OF MUSEUMS IN COLLECTING COMPUTERS, Gwen Bell
(with additional editing by Robert F. Rosin)
THE ANNALS OF THE HISTORY OF COMPUTING AND
OTHER ,JOURNALS, BernardA. Galler
AN EFFECTIVE HISTORY CONFERENCE, Jean E. Sammet
UNIVERSITY COURSES, Martin Campbell-Kelly
DOCUMENTING PROJECTS WITH HISTORY IN MIND, Michael Marcotty
ISSUES IN THE WRITING OF CONTEMPORARY HISTORY, J.A.N. Lee
FORUM CLOSING PANEL
Transcript of Question and Answer Session
772
Appendix A: What Makes History? Michael S. Mahoney
831
Appendix B: Call for Papers
833
Appendix C: List of Attendees
849
Appenclix D: Final Conference Program
851
Index
857
vi
www.it-ebooks.info
782
785
789
795
799
806
808
810
825
EDITORS' INTRODUCTION
In 1978, the ACM Special Interest Group on Programming Languages (SIGPLAN) sponsored a
Conference on the History of Programming Languages (HOPL). Papers were prepared and presentations made at a Conference in Los Angeles, California. The Program Committee selected thirteen
languages that met the criteria of having been in use for at least 10 years, had significant influence,
and were still in use. The languages were: ALGOL, APL, APT, BASIC, COBOL, FORTRAN,GPSS,
JOSS, JOVIAL, LISP, PL/I,SIMULA, and SNOBOL. The results of that conference were recorded
in History of Programming Languages, edited by Richard L. Wexelblat [New York: Academic Press,
19811.
The Second ACM SIGPLAN History of Programming Languages Conference (HOPL-II) took
place on April 20-23, 1993 in Cambridge, Massachusetts. The papers prepared for that conference
form the basis of this present volume, along with the transcripts of the presentations, a keynote address
"Language Design as Design" by Fred Brooks, a discussion of the period between HOPL and HOPL-II
by Jean Sarnmet, and a talk on "What Makes History" by Mike Mahoney (the conference historian).
There was also a banquet, hosted by Bernie Galler, and a closing panel of six language developers,
chaired by Mike Mahoney. Unfortunately due to page limitations, the transcripts of the banquet,
Forum, and the closing panel are not included in this volume. It is our hope that they can be published
elsewhere. The Conference was preceeded by a Forum on the History of Computing, chaired by Bob
Rosin, and the papers presented at the Forum complete this volume.
The Program Committee for HOPL-II decided to have both invited and submitted papers, and we
believe that the range of languages and the quality of presentation will make this volume a classic in
the history of programming literature. The languages at HOPL-II were: Ada, A L G O L 68, C, C++,
CLU, Discrete Simulation Languages, FORMAC, Forth, Icon, Lisp, Monitors and Concurrent
Pascal, Pascal, Prolog, and Smalltalk.
The majority of this volume is the material on the individual languages, with a chapter devoted to
each language, as follows:
• a paper by each author;
• a transcript of the author's presentation;
• a transcript of a discussant's remarks (not all languages);
• a transcript of the question and answer session;
• biographies of the authors.
It should be noted that some authors' presentations closely followed their papers, and since the
book is oversized, the transcripts of these presentations were omitted, with the kind permission of the
authors.
All papers were published as preprints in ACM SIGPLAN Notices, Vol. 28, No. 3 (March 1993).
The papers are reprinted here with the permission of ACM and of the authors. In some cases changes
have been made by the authors to correct typographical or factual errors. In some cases additional
material has been added, with an appropriate notation by an author or editor.
vii
www.it-ebooks.info
EDITORS' INTRODUCTION
Jan Lee, Jean Sammet, and Bob Rosin, in their various capacities, have identified the numerous
people who worked so long and hard on the Conference; however, we would like to identify the people
who assisted us in the production of this volume:
Betty Henderson patiently transcribed 24 hours of difficult computer jargon, and put it on diskettes
so Rick and I could begin editing;
We are especially grateful for the support of the National Science Foundation for providing partial
funding for the conference and for the preparation of this book, under grant CCR -9208568 and to
Nora Cortes-Comerer of ACM Press who secured the additional funding necessary for the
completion of the project. In addition to sponsoring the conference, SIGPLAN and its current
Chair, Barbara Ryder, provided additional funding for the preparation of photographs for this
volume;
Alan Rose of Multiscience Press, Inc. (New York, NY) served as our producer, and Lauralee B.
Reinke of Context Publishing Services (Sausalito, CA) formatted all of the material; without their
expertise, the technical details of preparing a book of this size would have overwhelmed us;
Special thanks go to Anita LaSalle, Chair of the Computer Science and Information Systems
Department at The American University for casettes, diskettes, thousands of pages of photocopies,
and FedEx charges to send materials around the globe; and to Sandy Linden, Mark Davidson, and
Maureen O'Conneil who provided us with administrative support;
And last, but not least, a special thanks to Dick Wexelblat who started this book project; he was
always there to share his experience and to give advice when asked.
We are especiallly indebted to those individuals whose presentations were deleted from this volume
due to page limitations, colleagues who gave of their time and talent without the reward of seeing
their efforts in print.
Our families de:serve our sincere appreciation, since efforts of this magnitude naturally intrude on
family life:
Diane, John and Jeannine, Michael and Kathleen Bergin, and a special thanks to Karen and
Gibson.
baby
Finally, we would be remiss if we did not thank Jean Sammet, who has spent much of her
professional life preserving the history of programming languages. There is no way to thank her
adequately for inspiring the conference or for almost two years of campus visits, telephone conversations, telephone reminders, e-mail messages, and other support that she willingly gave us during
the preparation of this book. Without her single-minded devotion to her profession, our discipline
would be missing the incredibly rich history captured in this volume.
Tim Bergin
Rick Gibson
viii
www.it-ebooks.info
GENERAL INTRODUCTION
We are indeed pleased to provide this introductory material for this book. The book is the culmination
of work on a 1993 conference (HOPL-II) whose development started in 1990; HOPL-II in turn was
a follow-on to the first HOPL, held 15 years earlier (1978).
First HOPL Conference
In order to put this conference in perspective, it is useful to provide some information about the first
conference of this type that was held. In 1978 ACM SIGPLAN sponsored a History of Programming
Languages Conference (HOPL) with Jean E. Sammet as General Chair and Program Chair, and
John A. N. Lee as the Administrative Chair. That conference was composed of invited papers for the
13 languages that met the following criteria:
"(1) were created and in use by 1967;
(2) remain in use in 1977; and
(3) have had considerable influence on the field of computing."
[History of Programming Languages, Richard L. Wexelblat, ed., Academic Press, ACM Monograph
Series, 1981), page xviii.]
(The cutoff date of 1967 was chosen to provide perspective from a distance of at least ten years.)
The languages chosen by the Program Committee as meeting those criteria were: ALGOL, APL,
APT, BASIC, COBOL, FORTRAN, GPSS, JOSS, JOVIAL, LISP, PL/I, SIMULA, and SNOBOL. A
key person involved in the early development of each of those languages was invited to write a paper
according to very strict guidelines and with numerous rewrites expected. That conference was deemed
a great success by its attendees. The final proceedings, edited by R. L. Wexelblat, is now the definitive
work on the early history of those particular languages.
Several people asked at that time why a conference was held rather than simply having people
prepare the papers and publish them in a book. We felt initially--and this was confirmed by the actual
occurrence--that the audience discussion after each presentation would provide greater insight into
the history of the events and decisions that led to the definition of the languages in their early forms.
Some of the "cross talk" publicly and privately among the attendees--many of whom participated in
the creation of several languages--provided significant insights into the early developments.
Second HOPL Conference
The first HOPL conference was intended to be only the beginning, and not the end of any consideration
of programming language history. As a result, not long after the end of that conference, we began
thinking about a second HOPL Conference, with the intent of building on what we learned fi'om the
first conference, and expanding its scope and coverage. Due to the pressure of other activities, it took
many years before we were able to focus on a second conference. During that time period, a cadre of
our colleagues was developed that also strongly promulgated the need to study the history of
ix
www.it-ebooks.info
GENERAL INTRODLICTION
computing. In fact, the establishment of the journal Annals of the History of Computing, to be
published by AFIPS, was announced at the end of the first HOPL Conference with Bernard A. Galler
as Editor-in-Chief. Since 1987, John A. N. Lee has been the Editor-in-Chief, and in 1992 the IEEE
Computer Society became the publisher. In January 1996, Michael R. Williams took over as the third
Annals Editor-in-Chief. ACM has also sponsored several other history conferences, covering the fields
of scientific comptaing, medical informatics, and personal workstations.
Finally, we developed a proposal in 1990, and the ACM SIGPLAN Executive Committee authorized us to proceed 'with this Second History of Programming Languages Conference (HOPL-II). We
then called back to voluntary duty several members of the original conference-organizing committees
and many of them were happy to join us in this new endeavor. In addition, we made a conscious effort
to bring in newer/younger people who also have an interest in examining the past. But organizing a
history conference is by no means as simple as organizing a technical conference dealing with current
or recent research in which all the papers are to be contributed and for which there is tremendous
competition to participate. This is primarily because most professionals in the computer field prefer
to concentrate on current and future work rather than looking backward to what they have accomplished. A detailed description of how the final program was created is given in the next section of
this introduction.
The study of va~rious aspects of computing history is not merely an intellectual exercise; it shows
us how we reached our current condition, indicates effective approaches as well as past errors, and
provides perspective and insight for the future, and a surer sense of how to get there.
The conference itself was held April 20 to 23, 1993, in Cambridge, Massachusetts with preprints
issued as the March 1993 issue ofACM SIGPLANNotices (Volume 28, Number 3). This book contains
an enormous amount of material not included in the preprints, including some revised papers as well
as transcripts of the talks, the Forum papers, the keynote address, and other material that provide a
record of what occurred during the conference. We regret that space limitations prevented the inclusion
of the transcripts of the banquet, the closing panel and the Forum. We hope that they can be published
elsewhere.
We appreciate the hard work done by all the people who helped organize and run the conference.
We are particularly grateful to Tim Bergin and Rick Gibson who unexpectedly took on the enormous
task of preparing this book for publication.
John A. N. Lee (Conference Chair)
Virginia Polytechnic Institute and State University
Jean E. Sammet (Program Chair)
Programming Language Consultant
(IBM, Retired)
www.it-ebooks.info
DEVELOPMENT OF THE HOPL-II
PROGRAM
The success we tried to achieve in this conference is due to an extremely hard-working and dedicated
Program Committee and equally hard-working authors and numerous other volunteers. This section
explains hownand to some extent why~the program was developed.
MEMBERS OF PROGRAM COMMITTEE
The Program Committee consisted of the following people, and almost all of them carried out a major
task in addition to his/her standard role on a program committee. The affiliations shown are those at
the time the conference was held.
Chair:
Secretary:
Conference Historian:
Forum Chair:
Other members:
Jean E. Sammet
(Programming Language Consultant)
Thomas J. Bergin
(American University)
Michael S. Mahoney*
(Princeton University)
Robert E Rosin
(Enhanced Service Providers, Inc.)
Jacques Cohen
(Brandeis University)
Michael Feldman
(The George Washington University)
Bernard A. Galler*
(University of Michigan)
Helen M. Gigley
(Naval Research Laboratory)
Brent Hailpern*
(IBM)
Randy Hudson
(Intermetrics)
Barbara Ryder*
(Rutgers University)
Richard L. Wexelblat
(Institute for Defense Analyses)
*Chair of a Program Review Committee (as described below)
APPROACH TO CREATING THE PROGRAM
In order to appreciate the papers presented at this conference and the accompanying Forum on the
History of Computing, it is important to understand how the program was developed.
Three fundamental decisions were made at the beginning:
1. there would be invited and contributed papers,
2. the scope of the conference would include papers on the early history of specific languages--as
in the first HOPL conferencenand papers on (a) evolution of a language, (b) history of
language features and concepts, and (c) classes of languages for application-oriented languages and paradigm-oriented languages,
3. the conference was not intended to honor anyone.
xi
www.it-ebooks.info
DEVELOPMENTOF THE HOPL-IIPROGRAM
Invited Speakers,
For the invited speakers, the Program Committee used the same types of criteria used for the first
HOPL conference, as indicated in the preceding section, but changed the cutoff date to require that
"preliminary ideas about the language were documented by 1982 and the language was in use or being
taught by 1985." We issued six invitations for people to prepare papers because these languages met
the three indicated criteria, that is, compliance with the date, were still in use, and had influence on
the computing field):
Aiain Colmerauer
Jean Ichbiah
Alan Kay
Dennis Ritchie
William Whitaker
Niklaus Wirth
Prolog
Ada (technical development)
Smalltalk
C
Ada (project management)
Pascal
Each of these people was deemed a key person in the early development of the language; all of
them accepted the invitation/request to prepare detailed papers, but subsequently Jean Ichbiah was
unable to prepare a paper within the specified conference schedule due to the pressure of other
responsibilities and withdrew his participation.
Guidance to Authors and Paper Submission
The Program Committee followed the earlier successful plan from the first HOPL Conference by
providing authors with detailed questions to guide them in writing their papers. We used the original
questions for early history from the first HOPL Conference, and then developed three new sets of
questions to deal with the three new types of papers we expected. Randy Hudson coordinated and
edited those four sets of questions; they appear in this book as Appendix B.
A call for papers was issued in December of 1990 (Appendix B) with notification to potential
authors that their papers would go through two rounds of refereeing with a major rewrite probably
needed between them. Dick Wexelblat served as submissions coordinator, and provided administrative
support for the Call for Papers, the distribution of manuscripts (twice), and hosting two Program
Committee meetings. In his role as editor of the preprints (Volume 28, Number 3, March 1993 issue
ofACM SIGPLAN Notices), he also developed the format guidelines used by the authors.
Program Review Committees
Because of the complexity of the paper processing and refereeing, we established four Program
Review Committees (PRCs), each serving essentially as a subcommittee of the Program Committee
but with additional people serving on each PRC. The PRC scopes corresponded approximately to the
types of papers we expected. The chairs of those PRCs were responsible for most of the interaction
with the authors and referees on each specific paper. The PRC chairs were:
Early History
Evolution
Features & Cla:~ses
Invited Papers
Brent Hailpern
Bernard A. Galler
Barbara Ryder
Michael S. Mahoney and Brent Hailpern
xii
www.it-ebooks.info
DEVELOPMENTOF THE HOPL-II PROGRAM
Each of the PRC Chairs also recruited additional people to help with the refereeing and selection.
While I would like to list their names, as is often done for conferences, it is not appropriate to do so
here because almost all of them were selected because of knowledge of specific language(s) so it
would be too easy for the authors to identify their referees!
Paper Selection
In September 1991 the Program Committee gave "conditional acceptance" to some of the contributed
papers. The authors were given referees' comments and told that if they complied with a reasonable
number of those suggestions the paper would be accepted (i.e., they would not be in competition with
one another).
In August 1992 the Program Committee decided which contributed papers met the standards for
the conference, and those are printed here, along with the invited papers, which also underwent a
similar process of rewrites.
Guidance to Authors on Historiography
In addition to other steps taken to try to achieve high quality, we asked Michael S. Mahoney, a
professor with significant expertise and experience in historiography--and specifically the history of
computing--to provide guidance to the Program Committee and the authors. He reviewed all the
papers and provided specific assistance to any author who requested it. His paper "Making History"
appears in Chapter 1; another paper, "What Makes History?", was sent to prospective authors and is
included as Appendix A.
Language Experts
To assist the authors, each PRC chair assigned a technical expert in the subject to help each author
with the paper by reviewing the various drafts. In some sense, these experts are the unsung heroes of
the conference, and so it is appropriate to list and thank them.
Language~Topic
Expert
Language Summary
Ada
ALGOL 68
C
C++
Clu
Concurrent Pascal
FORMAC
Forth
Icon
Lisp
Anthony Gargaro
Henry Bowlden
William McKeeman
Jerry Schwarz
John Guttag
Narain Gehani
James Griesmer
Phil Koopman
David Hanson
Gerald Jay Sussman
Pascal
Prolog
Simulation languages
Smalltalk
C.A.R. Hoare
Fernando Pereira
Philip Kiviat
Adele Goldberg
Anthony Gargaro
Henry Bowlden
William McKeeman
Jerry Schwarz
John Guttag
Charles Hayden
James Griesmer
Phil Koopman
David Hanson
Gerald Jay Sussman, Guy L. Steele, Jr.,
and Richard P. Gabriel
Peter Lee
Fernando Pereira
Philip Kiviat
Tim Budd
xiii
www.it-ebooks.info
DEVELOPMENTOF THE HOPL-II PROGRAM
Language Descriptions
We wanted the authors to concentrate on writing a history paper and not on describing the language.
Therefore we asked knowledgeable individuals to provide a very short introduction to each language
and these "langua~;e summaries" appeared in the preprints. Unfortunately, space limitations prevented
our including them here. The authors of these language summaries are listed above; the preparation
and editing of these language descriptions was coordinated by Michael Feldman.
Reasons for Some Language Absences
In examining the list of papers accepted for this conference, the reader might well wonder about the
absence of some obvious subjects. For example, since FORTRAN and COBOL were included in the
first HOPL Conference--and remain as major languages---one might have expected papers on their
evolution to appea~r in this conference. The Program Committee decided to invite only papers dealing
with the early history of the major languages developed since the first HOPL conference. Therefore,
the omission of the.se subjects, and numerous others, is due to the policy of having contributed as well
as invited papers; if people did not submit acceptable papers on an important topic it could not be
included in this conference.
FORUM ON THE! HISTORY OF COMPUTING
Many SIGPLAN Conferences precede the main paper sessions with a day of tutorials. The Program
Committee adapted that practice to provide an afternoon and evening devoted to a Forum on the
History of Computing. The intent of the Forum was to sensitize computer scientists to issues and
challenges in the history of computing, and to entice some of them to become involved in this work.
The Forum activity was chaired by Robert E Rosin, who assembled a committee to help organize the
topics and sessions;, invite the participants, and review written material. An introduction by Robert
Rosin, the written papers prepared for the Forum, and a transcript of the closing panel are included
in this book. Unfortunately, there was not enough room in this volume to include transcripts of the
presentations.
The Forum Committee operated under the general guidance and approval of the Program Committee, and consisted of the following people, whose affiliations at the time of the conference are
shown:
Chair:
Members:
Robert E Rosin
Thomas J. Bergin
Michael S. Mahoney
Michael Marcotty
Tom Marlowe
Jean E. Sammet
(Enhanced Service Providers, Inc.)
(American University)
(Princeton University)
(General Motors; now a consultant)
(Seton Hall University)
(Programming Language Consultant)
PERSONAL COMMENT
It is not common fi~r the Program Chair of a conference to have a paper included in that conference.
The Program Committee decided initially that it was reasonable for me to submit a paper, but in order
to maintain objectivity and fairness I was kept completely separated from any refereeing or decision
xiv
www.it-ebooks.info
DEVELOPMENT OF THE HOPL-II PROGRAM
process on my paper, and I don't know any more than any other author as to who the referees were
or what general evaluation comments were turned in.
CONCLUSION
The entire Program Committee and its supporting subcommittees have spent literally hundreds--and
in some cases thousands---of hours preparing this conference. I am personally very grateful to Tim
Bergin and Rick Gibson for the hundreds of hours they have spent in preparing this book. We hope
you will find it valuable initially and in the future.
Jean E. Sammet
Program Chair
XV
www.it-ebooks.info
AC KN OWLE DG M ENTS
My special thanks go to Jean Sammet, Program Chair, who coincidentally moved from full-time work
to consultancy just about the time the intense effort on the development of the program started. Over
the past five years she has spent an immense amount of time on this task, and without her drive,
enthusiasm, and high standards, we would not have the high quality of historiography represented by
the papers in this volume.
Michael Mahoney, Conference Historian, led the program committee in learning and applying the
techniques and methods of historical research. At least one program committee member was heard to
say that he or she never realized before how difficult historical research was. In fact, the whole program
committee deserves our thanks for developing an outstanding, high quality program.
The preparation of the preprints was more complicated than usual due to the size and variety of
material. The efft~rts by Dick Wexelblat and Janice Hirst in preparing the preprints are greatly
appreciated. The work to prepare this book was enormous, and the willingness of Tim Bergin and
Rick Gibson to unexpectedly assume this task is greatly appreciated.
The organizing committee worked for approximately one year before the conference. A very visible
aspect reflects the work of Dan Halbert, Publicity Chairman. Many of the attendees would not have
known of the conference without his efforts; his patience in providing numerous drafts of publicity
items satisfied our demands for high standards of presentation even in the ancillary materials.
The results of the efforts of many members of the organizing committee was best seen during the
conference itself, though some, like Richard Eckhouse, Conference Treasurer, remained unseen to
participants. Our thanks to them all.
Members, Organizing Committee:
Program Chair:
Treasurer:
Local arrangements:
Publications:
Recordings:
Registration:
Book exhibits:
Publicity:
Jean E. Sammet
Richard Eckhouse
Peter S. Mager
Richard L. Wexelblat
Mary van Deusen
Karen Lemone
James P. Bouhana
Dan Halbert
(Programming Language Consultant)
(University of Massachusetts, Boston)
(Perception Technology Corporation)
(Institute for Defense Analyses)
(IBM)
(Worcester Polytechnic Institute)
(Performance International)
(Diqital Equipment Corporation)
Our thanks also go to the National Science Foundation which provided support for speakers,
students, and this final book under grant #CCR-9208568.
John A. N. Lee
General Chair
xvi
www.it-ebooks.info
I
The Opening Session
CONFERENCE CHAIRMAN'S OPENING REMARKS, John A. N. Lee
"LANGUAGE DESIGN AS DESIGN," Frederick P. Brooks, Jr.
"FROM HOPL TO HOPL-II," Jean E. Sammet
"MAKING HISTORY," Michael S. Mahoney
CONFERENCE CHAIRMAN'S OPENING REMARKS
J.A.N. LEE: Welcome to the Second History of Programming Languages Conference. My name is
Jan Lee; I ' m the general chairman of this conference. We started thinking about this conference in
1978; that was the year of the first History of Programming Languages Conference (HOPL-I), chaired
by Jean Sammet. It had been enormously successful and we were enthused enough at that time to
begin thinking about our next history conference. We had many suggestions, perhaps the most serious
of which was to consider the history of operating systems. In fact, we even had a name for it, HOOS.
But it was obvious that the history of programming languages was continuing to happen, even in 1978
as we held that meeting. Pascal had begun to replace FORTRAN as the language of choice in computer
science education, and the Department of Defense was talking about an all-purpose new language.
There were programming developments that we left out of that meeting simply because there was not
enough time to cover them. There were already things happening that would clearly be on the agenda
of the next meeting.
In the history of computing we generally choose to observe past events from a viewpoint of fifteen
years; thus, 1993 was the obvious date not only to hold a second conference, but to regard that original
meeting itself as a historical event. Jean Sammet and I have always known there would be another
meeting. And in 1990 we convinced ACM and SIGPLAN to support that next meeting. Jean then
recruited an impressive program committee who have worked very hard, as have the authors they
selected, for almost three years. Most recently, we recruited a team of organizers to arrange the
physical arrangements for you. Jean will introduce her committee to you at a later time and I will
introduce the administrative volunteers. Similarly, Jean will relate to you the history of programming
languages between the two conferences.
My colleagues in academia believe there are three signs of senility in a prot~ssor--when his dreams
turn lightly to thoughts of education, or to ethical considerations, or to history. However, in our
profession I feel it's a sign of maturity when we have concerns for these aspects of the science. ACM
started in about 1968 to concern itself with education and curricula. Prior to that it had introduced
one of the first codes of professional conduct. In the mid-1970s we were concerned about the
www.it-ebooks.info
CONFERENCE CHAIRMAN'S OPENING REMARKS
preservation of our history as, regrettably, we began to lose some of our pioneers. We are still
concerned with cu~rricula. We've recently updated the code of professional conduct. And we continue
to have concerns about preserving our heritage.
ACM and SIGPLAN agreed to support this conference three years ago and the National Science
Foundation agreedt to provide additional support to our invited speakers. NSF also provided funding
for scholarships for students, and was joined by SHL System House Inc., the employer of one of our
1978 scholarship winners, for support of a fifth student. Of course the major sponsors of our
conference are the employers of our volunteers, who provide the time and funding for their
participation. You will meet all of our speakers later in the meeting, but let me now introduce and
congratulate our student scholarship holders and ask them to stand. From the United Kingdom, Ross
Hamilton, University of Warwick. From Norway, Jan Rune Hoimevik, University of Trondheim. Close
to home, Stephen P. Masticola, Rutgers University; Rajeev Pandey, from Oregon State University;
and Patficia A. Summers from Virginia Polytechnic Institute and State University.
In 1978, the time of HOPL-I, there had been two earlier major history projects. The AFIPS/Smithsonian projects on history and the National Science Foundation sponsorship of a great reunion of
pioneers of Los Alamos National Laboratory. In 1978, we knew about two proposals, one to establish
a computer history institute, which would be sponsored by a then anonymous donor, and the
anticipated publication of an AFIPS journal to be called Annals of the History of Computing. In that
year also, Ken Olsen approached Gwen Bell to ask whether the TX-0 could be faithfully recreated at
Marlboro. That gave her the impetus to establish a collection of artifacts and set her on the road to
establishing a museum. That was 1978.
In the past 15 years, the awareness of computing as a historical event has grown. Part of that
awareness is due to The Computer Museum, which we will visit tonight; the transmogrification of
that original digital museum at Marlboro is now a museum of international standing. It's not just a
collection of must), artifacts. It has become, under Gwen Bell's leadership, a learning place about the
past, the present, a~ndthe future of computing. In the 1960s, the Smithsonian had created a gallery in
the National Museum of American History which included artifacts from the ENIAC and the
Whirlwind. But more recently, the Institution has opened galleries in both the National Air and Space
Museum and the Museum of American History, which emphasize computers and information
technology. The Charles Babbage Institute was established at the University of Minnesota by Erwin
Tomash. CBI has become our primary document archive and research institute. Recently, the IEEE
center for the history of electrical engineering has also become a new center for the study of the history
of computing at Rutgers University.
In Great Britain, the Science Museum at Kensington recently completed the great work of Charles
Babbage, on the bicentenary of his birth, by building his Difference Engine. Dorin Swade, the curator,
accomplished what Babbage and Clemment had been unable to do in the 19th century and proved
that Babbage's design was both correct and constructable still using 19th century tooling techniques.
Apart from a couple of obvious oversights in the drawings that any professional engineer would have
found, Babbage's Engine---different from most of our software--worked the first time. Building on
the work of Konrad Zuse, The Deutsches Museum in Munich has created a gallery that includes not
only a construction of his Z-3 machine, but also Fritz Bauer's Stanishlaus machine.
Next year, Europe will commemorate the D-Day landing in Normandy, which led to the end of
World War II. One of the contributions of that success has got to be the work of the code breakers at
Bletchley Park. Recently the Bletchley Park Trust has been created and has raised £1,000,000 to
preserve the park and its significant buildings, and to create a museum to memorize COLOSSUS,
Alan Turing, Telecommunication, and Air Traffic Control. We wish them luck.
2
CHAPTER I
www.it-ebooks.info
INTRODUCTION OF FREDERICK R BROOKS, JR.
In the aftermath of HOPL-I, ACM organized three history conferences on workstations, medical
informatics, and scientific computation. There have been conferences in Europe, including, in 1991,
a magnificent bicentennial conference on Babbage and Farraday at St John's College, Cambridge.
The French conference will have its third instance this year. During this period, we've also seen the
development of a number of organizations. The IFIP working group on history will have its first
meeting later this year and is attempting its first pioneer day, following the concept of the AFIPS
pioneer days, which will be held in Hamburg next year.
We've seen many things happen; the history of computing has come a long way in 15 years. It
involves many more interested and interesting people, several archival institutions, textbooks, and
publications, one electronic bulletin board, an annual computer trivia game---~he Computer
Bowl--and a TV series which won the 1992 Peabody Award for Journalism. It is also changing; we
are finally beyond the phase of merely collecting and preserving our heritage. We have to work
seriously on analysis, evaluation, and application. We have come a long way since 1978.
Let's get on with it; let's have a conference.
Editor's Note: Due to space limitations, welcoming remarks by Gwen Bell President of ACM, and
Stuart Feldman, Chair of SIGPLAN were deleted, as were the remarks of the Program Chair, Jean
E. Sammet.
INTRODUCTION OF FREDERICK P. BROOKS, J R .
PROGRAM CHAIR,JEANE. SAMMET: The Program Committee thought long and hard about selecting a keynote speaker. We wanted someone who had been around for quite a while [audience
laughter]--you may interpret that phrase any way you want; but since most of us on this platform
have been around for quite a while it seems allright to say that. We also wanted somebody who had
a very broad background in the general field of computing (not necessarily limited to programming
languages), but we did want somebody with significant work in software. Fred Brooks has had a very
distinguished career and I can only indicate some of the highlights.
He received a Ph.D in 1956 in Applied Mathematics from Harvard University, and his advisor was
the legendary Howard Aiken. (If there are any of you in the audience who are young enough not to
know who Howard Aiken is, then perhaps that is a good reason for you to go and study something
about the history of the hardware.) Dr. Brooks founded the Computer Science Department at the
University of North Carolina at Chapel Hill in 1964, and served as its chair for 20 years. He remains
on the faculty there.
He worked at IBM from 1956 to 1964. While he was there, he served in two major capacities. One
was as the manager of the IBM System/360 hardware development and the corporate processor
manager for the System/360. So he was largely the technical guiding light behind the S/360. His
second major capacity at IBM was as manager of the OS/360 development. So he really handled the
360 from both the hardware and software sides. Prior to his work on the 360, he participated in the
development of STRETCH and HARVEST at IBM; they were pioneering computers to push the state
of the art in several directions.
Dr. Brooks has received numerous honors--far too many to list all of them. Among others, he
received the National Medal of Technology, the AFIPS Harry Goode Memorial Award, the IEEE
Computer Society McDowell Award, the ACM Distinguished Service Award, the DPMA Computer
Sciences Man-of-the-Year award, election to the National Academy of Engineering, and just recently,
the John von Neumann medal from the IEEE.
THE OPENING SESSION
3
www.it-ebooks.info
FREDERICK P. BROOKS, JR.
Dr. Brooks has served on numerous advisory boards and boards of directors. He has authored or
co-authored over 70 papers or book chapters. Probably his best known publication is his book The
MythicalMan-Month: Essays on Sof~are Engineering. He is going to talk here on "Language Design
as Design."
KEYNOTE ADDRESS: LANGUAGE DESIGN AS DESIGN
Frederick R Brooks, Jr.
When Jean called and said what she wanted me to talk about, I said I had not done any thinking about
that and didn't see any opportunity to do any. I considered that an impediment to talking about it. But
I had done some thinking about another subject that I would be glad to talk about. She said, "All right."
Hence today's topic.
(SLIDE 1) I have been especially interested in the process of design. So I welcomed the opportunity
to speak to a room full of experienced designers and to share some of my thinking to date. Because
this is in very earl,.,, stages of formulation, I should like to ask you at the breaks, at lunch, and at the
reception, to share with me your thoughts on the design process.
Here are the subtopics:
• What is the ,design process?
• Why should anyone do language design now?
• Some principles for how to do design
• The role of esthetics in technical design
• An assertion about the nature of design, namely, that great designs come from great designers,
not committees.
(SLIDE 2) The Oxford English Dictionary defines design as "To form a plan or scheme of, to
arrange or conceive in the mind for later execution." That's a sufficiently general definition.
(SLIDE 3) I have had the opportunity in my life to work on five machine languages, three high
level languages, a laalf a dozen molecular graphics tools, some application systems in virtual reality,
and four buildings.
L a n g u a g e D e s i g n as Design
Design
1. What is the design process?
2. Why do language design now?
"To form a plan or scheme of,
3. Some design principles
to arrange or conceive in the mind...
4. Esthetics in technical design
for later execution."
OED
5. Great designs come from great
designelrs
SLIDE 1
SLIDE 2
4
CHAPTER I
www.it-ebooks.info