PL Perspectives

Perspectives on computing and technology from and for those with an interest in programming languages.

HOPL is the most paradoxical conference SIGPLAN puts on: the hardest to publish in, yet a nearly 100% acceptance rate. But wait—we don’t want no tl;dr. The facts:

The History of Programming Languages conference series produces accurate historical records and descriptions of programming language design, development, and philosophy. It is a major SIGPLAN event that is infrequently held: the first three were in 1978, 1993, and 2007. The papers for HOPL IV, on the history and evolution of 19 programming languages and language features, have now been published (Open Access) as the June 2020 issue of PACMPL:

  • APL (Roger K.W. Hui, Morten J. Kromberg)
  • C++ (Bjarne Stroustrup)
  • Clojure (Rich Hickey )
  • Coarrays and SPMD Parallelism in Fortran (John Reid, Bill Long, Jon Steidel)
  • D (Walter Bright, Andrei Alexandrescu, Michael Parker)
  • Emacs Lisp (Stefan Monnier, Michael Sperber)
  • F# (Don Syme)
  • Groovy (Paul King)
  • JavaScript (Allen Wirfs-Brock, Brendan Eich)
  • LabVIEW (Jeff Kodosky)
  • Logo (Cynthia Solomon, Brian Silverman, Henry Lieberman, Ken Kahn, Brian Harvey, Mark L. Miller, Margaret Minsky, Artemis Papert)
  • Hygienic Macros (William D Clinger, Mitchell Wand)
  • MATLAB (Jack Little, Cleve Moler)
  • Objective-C (Brad Cox, Steve Naroff, Hansen Hsu)
  • Oz (Peter Van Roy, Seif Haridi, Christian Schulte, Gert Smolka)
  • S and R (John Chambers)
  • Smalltalk (Daniel Ingalls)
  • Standard ML (David MacQueen, Robert Harper, John Reppy)
  • Verilog (Peter Flake, Phil Moorby, Steve Golson, Arturo Salz, Simon Davidmann)

The HOPL IV conference itself will feature presentations of these 19 papers, plus:

  • Keynote talk by Mary Shaw
  • Keynote talk by James Noble and Robert Biddle

Unfortunately, the conference has itself been postponed because of the COVID-19 (coronavirus) pandemic. We are working with SIGPLAN to identify a new time and place for the HOPL IV presentations.

What makes HOPL different?

That’s it for facts; now the story.

HOPL is the most paradoxical conference SIGPLAN puts on: for one thing, it is the hardest conference to get a paper into. Started in 1978 and through this year, only 59 papers total have been accepted—about 1.4 a year. On the other hand, the goal each time is a 100% acceptance rate, and in 2020 we got to 86% (we’ll do better next time).

HOPL is a technical history conference. Authors—generally computer scientists—write about programming languages they helped create or programming language ideas they have extensive knowledge about and which have withstood time’s assaults. But they write about not only technical matters; they write about people and they write stories of how things came to be.

Developing the HOPL IV program

In October 2016, Guy Steele was invited to be program chair of HOPL IV, at that time scheduled to be held in 2022. In early 2017, Guy Steele asked Richard Gabriel to help him. The target date was changed to 2020, co-located with PLDI. In March, Mark Priestley agreed to act as HOPL’s Historian. Steele and Gabriel (aka Quux and rpg) decided to encourage submissions but to rely on invitations (more precisely, “letters of encouragement”).

They didn’t encourage people to write about a language solely because it is either beautiful or technically sound, and certainly not because it is regarded as innovative. The submission criteria had only to do with age and influence: age, to ensure historical perspective; influence, partly to ensure a relevant story, but more importantly to ensure that the developers endured the entire process not only of designing and implementing a language but getting it adopted by users, because it is typically from deployment and adoption that we have the most to learn.

Steele and Gabriel made lists of languages and programming-language topics from memory, consulted online lists such as TIOBE, and looked at all prior HOPL conferences. In the end they sent out 62 email messages of encouragement. Two face-to-face program committee meetings were held, one in September 2018 (co-located with ICFP 2018) and one in January 2019 (co-located with POPL 2019).

The first meeting was to get a quick look at the submissions but primarily to train the program committee about what history papers are and how to review them.

Reviewing

Reviewing papers: everyone knows how to do it. But HOPL papers are not much like SIGPLAN conference or journal papers.

  • HOPL is infrequent—1978, 1993, 2007, 2020
  • HOPL papers are unlike ordinary research papers
  • HOPL authors are asked to write history, but they are not historians
  • HOPL authors are given few guidelines
  • HOPL PC members will be reviewing works in progress
  • HOPL has a long shepherding period (13 to 18 months)
  • HOPL papers can be oral histories
  • HOPL papers can be historical investigations
  • HOPL papers can be origin stories
  • HOPL papers can be explorations
  • HOPL papers must contain no novel results
  • There are no page limits or other length constraints
  • There is no competition for conference and publication resources
  • There is no official acceptance rate target, but we hope for 100%

Steele, Gabriel, and Priestley produced a 21-page Reviewing Principles document along with a 67-slide training deck.

Initial Decisions

From the encouraging emails and the official Call for Papers, 26 submissions arrived; 4 were withdrawn or rejected at the program committee meeting in January 2019. Then shepherds volunteered and were assigned.

wordcloud describing HOPL IV

Shepherding

Shepherding—everyone knows how to do it. Except HOPL shepherding is not like the usual SIGPLAN shepherding—for conferences such as POPL and PLDI, shepherding is the process of supervising an author addressing program committee (PC) comments; for a short-cycle review process, those comments are typically focussed and small(ish), but for HOPL, comments can be large and general. Moreover, some of the submissions are not even complete, so that shepherding includes advising and helping the author complete the draft, which in turn means that structural and genre changes are in bounds. In short, HOPL shepherding is like being a combined copyeditor and editor for the manuscript—that is, an editor in the classic sense of the word.

For the second PC meeting (January 2019), Steele, Gabriel, and Priestley wrote a 12-page shepherding guide along with a 19-slide training deck. Shepherding started, in some cases, immediately after the September 2018 PC meeting, and in all cases continued until the March 13, 2020, “camera-ready” deadline. Here is what one shepherd did.

The shepherd reviewed the paper in January 2019 and prepared a lengthy report. The shepherd reviewed a subsequent version in June 2019 and arranged for two other people to help with a detailed read-through. The shepherd drove 650 miles to the author’s home and spent seven days with the author and those two other people going over the paper sentence by sentence; changes to structure and a number of major revisions and new writing were suggested. In all, the shepherd worked about 100 hours on the paper that trip. In February 2020, the shepherd reviewed a new revision of the paper and again drove 650 miles to the author’s home where the shepherd and one other person spent another week with the author reviewing and helping make changes on the spot. The shepherd worked another 100 hours on the paper that trip. Moreover, at the author’s request over the year, the shepherd composed several pages of text for the paper. In all, the shepherd spent about 500 hours on that paper.

By the way, that paper was the length of a book.

At the other extreme, shepherding certain other HOPL papers “merely” felt like shepherding a conference paper that is three or four times the normal size. In any case, all papers received careful shepherding and multiple rounds of review. The authors themselves prepared and polished their papers over a period of two and a half years, investing hundreds of hours of effort to produce the best papers possible.

Summary

Over three years in the making; 19 papers; 1500 pages chock-full of history, stories, and photos. See the papers in the ACM Digital Library. Plan to attend the presentations once we figure out when the conference itself can be held.

Bios

Guy L. Steele Jr. (ACM Fellow, SIGPLAN Programming Languages Achievement Award) has been a member of SIGPLAN since 1971. He loves all programming languages—the stranger the better—but is choosy about which language to use for any specific task.

Richard P. Gabriel (ACM Fellow, ACM-AAAI Allen Newell Award) writes a poem a day. Quux and rpg have been close friends since the 1970s.

Disclaimer: These posts are written by individual contributors to share their thoughts on the SIGPLAN blog for the benefit of the community. Any views or opinions represented in this blog are personal, belong solely to the blog author and do not represent those of ACM SIGPLAN or its parent organization, ACM.