History of Programming Languages
History of Programming Languages (HOPL) is an infrequent ACM SIGPLAN conference. Past conferences were held in 1978, 1993, and 2007. The fourth conference was originally intended to take place in June 2020, but has been postponed.
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 and Ole-Johan Dahl
- 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.
HOPL IV was to be held June 14–16, 2020 in London, United Kingdom, but is postponed to 2021 due to the COVID-19 pandemic. The conference co-chairs are Guy L. Steele Jr. and Richard P. Gabriel. The languages covered in this conference must be widely adopted by 2011.
- APL Since 1978
Roger K.W. Hui, Morten J. Kromberg
- Thriving in a crowded and changing world: C++ 2006-2020
- A History of Clojure
- History of Coarrays and SPMD Parallelism in Fortran
John Reid, Bill Long, Jon Steidel
- Origins of the D Programming Language
Walter Bright, Andrei Alexandrescu, Michael Parker
- Evolution of Emacs Lisp
Stefan Monnier, Michael Sperber
- The Early History of F#
- A history of the Groovy programming language
Allen Wirfs-Brock, Brendan Eich
- History of Logo
Cynthia Solomon, Brian Silverman, Henry Lieberman, Ken Kahn, Brian Harvey, Mark L. Miller, Margaret Minsky, Artemis Papert
- Hygienic Macro Technology
William D. Clinger, Mitchell Wand
- A History of MATLAB
Jack Little, Cleve Moler
- The Origins of Objective-C at PPI/Stepstone and its Evolution at NeXT
Brad Cox, Steve Naroff, Hansen Hsu
- A history of the Oz multiparadigm language
Peter Van Roy, Seif Haridi, Christian Schulte, Gert Smolka
- S, R and Data Science
- The Evolution of Smalltalk from Smalltalk-72 through Squeak
- The History of Standard ML
David MacQueen, Robert Harper, John Reppy
- Verilog HDL and its ancestors and descendants
Peter Flake, Phil Moorby, Steve Golson, Arturo Salz, Simon Davidmann
- Official HOPL III conference website
- Official HOPL IV 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