History of Programming Languages
||This article may require cleanup to meet Wikipedia's quality standards. (December 2009)|
HOPL I was held June 1–3, 1978 in Los Angeles, California. Jean E. Sammet was both the General and Program Committee Chair. John A. N. Lee was the Administrative Chair. Richard L. Wexelblat was the Proceedings Chair. From Jean Sammet's introduction: The HOPL Conference "is intended to consider the technical factors which influenced the development of certain selected programming languages." The languages and presentations in the first HOPL were by invitation of the program committee. The invited languages must have been created and in use by 1967. They also must have remained in use in 1977. Finally, they must have had considerable influence on the field of computing.
The papers and presentations went through extensive review by the program committee (and revisions by the authors), far beyond the norm for conferences and commensurate with some of the best journals in the field. The languages (and speakers) included in HOPL-I were:
- ALGOL 60 - Alan J. Perlis and Peter Naur
- APL - Adin D. Falkoff and Kenneth E. Iverson
- APT - Douglas T. Ross
- BASIC - Thomas E. Kurtz
- COBOL - Jean E. Sammet
- FORTRAN - John Backus
- GPSS - Geoffrey Gordon
- JOSS - Charles L. Baker
- JOVIAL - Jules I. Schwartz
- LISP - John McCarthy
- PL/I - George Radin
- SIMULA - Kristen Nygaard
- SNOBOL - Ralph E. Griswold
Preprints of the proceedings were published in "SIGPLAN Notices", volume 13, number 8, August 1978. The final proceedings, including transcripts of question and answer sessions, was published as a book in the ACM Monograph Series: "History of Programming Languages", edited by Richard L. Wexelblat. Academic press, 1981.
HOPL II was held April 20–23, 1993 in Cambridge, Massachusetts. John A. N. Lee was the Conference Chair and Jean E. Sammet was the Program Chair. In contrast to HOPL I, HOPL II included both invited papers and papers submitted in response to an open call. The scope also expanded. Where HOPL I had only papers on the early history of languages, HOPL II solicited contributions on:
- early history of specific languages,
- evolution of a language,
- history of language features and concepts, and
- classes of languages for application-oriented languages and paradigm-oriented languages.
The submitted and invited languages must have been documented by 1982. They also must have been in use or taught by 1985.
As in HOPL I, there was a rigorous multi-stage review and revision process. The selected papers and authors were:
- Monitors and Concurrent Pascal - Per Brinch Hansen
- Prolog - Alain Colmerauer and Phillipe Roussel
- Icon - Ralph E. Griswold and Madge T. Griswold
- Smalltalk - Alan C. Kay
- ALGOL 68 - C. H. Lindsey
- CLU - Barbara Liskov
- Discrete Event Simulation programming languages - Richard E. Nance
- Forth - Elizabeth Rather, Donald R. Colburn, and Charles H. Moore
- C - Dennis Ritchie
- FORMAC - Jean E. Sammet
- Lisp - Guy L. Steele, Jr. and Richard P. Gabriel
- C++ - Bjarne Stroustrup
- Ada - William A. Whitaker
- Pascal - N. Wirth
Preprints of the proceedings were published in "SIGPLAN Notices", volume 28, number 3, March 1993. The final proceedings, including copies of the presentations and transcripts of question and answer sessions, was published as the ACM Press book  : "History of Programming Languages", edited by Thomas J. Bergin and Richard G. Gibson. Addison Wesley, 1996.
HOPL III was held June 9–10, 2007 in San Diego, California. Brent Hailpern and Barbara G. Ryder were the Conference co-Chairs. HOPL III had an open call for participation and asked for papers on either the early history or the evolution of programming languages. The languages must have come into existence before 1996 and been widely used since 1998, either commercially or within a specific domain. Research languages that had a great influence on subsequent programming languages were also candidates for submission.
As with HOPL I and HOPL II, the papers were managed with a multiple stage review/revision process.
Accepted Papers for HOPL III were:
- "A history of Erlang" by Joe Armstrong
- "A history of Modula-2 and Oberon" by Niklaus Wirth
- "AppleScript" by William R. Cook
- "Evolving a language in and for the real world: C++ 1991–2006" by Bjarne Stroustrup
- "Self" by David Ungar, Randall B. Smith
- "Statecharts in the making: a personal account" by David Harel
- "The design and development of ZPL" by Lawrence Snyder
- "The development of the Emerald programming language" by Andrew P. Black, Norman Hutchinson, Eric Jul and Henry M. Levy
- "The evolution of Lua" by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes
- "A history of Haskell: being lazy with class" by Paul Hudak, John Hughes, Simon Peyton Jones, and Philip Wadler
- "The rise and fall of High Performance Fortran: an historical object lesson" by Ken Kennedy, Charles Koelbel, Hans Zima
- "The when, why and why not of the BETA programming language" by Bent Bruun Kristensen, Ole Lehrmann Madsen, Birger Møller-Pedersen
The HOPL III programming languages can be broadly categorized into five classes (or paradigms): Object-Oriented (Modula-2, Oberon, C++, Self, Emerald, and BETA), Functional (Haskell), Scripting (AppleScript, Lua), Reactive (Erlang, StateCharts), and Parallel (ZPL, High Performance Fortran). Each HOPL III paper describes the perspective of the creators of the language.
- Official HOPL III conference website
- HOPL: an interactive Roster of Programming Languages
- History of Programming Languages Conference Records 1972-1993. Charles Babbage Institute, University of Minnesota, Minneapolis.
- A history of the history of programming languages by Thomas J. (Tim) Bergin