The journal Software: Practice and Experience has now been published for 40 years. Not many authors of papers that appeared in the early days of the journal are still active in publishing research articles today. However, Dr. Barbara G. Ryder is an outstanding exception. In the October–December issue of 1974, Barbara published a groundbreaking paper with the title ‘The PFORT Verifier’ while she was working at AT&T Bell Laboratories in New Jersey. The paper described a software tool that analyzes a Fortran program and verifies that it conforms to a portable subset of the language. Although the programming language has changed and the goals have become much more ambitious, Dr. Ryder and her research group at Virginia Tech still actively work in the field of program analysis. She is also a member of the Editorial Board of this journal.
In her role as one of the journal's earliest authors, I invited Dr. Ryder to write a retrospective article describing how her original work on the PFORT verifier and its software context of the 1970s are related to programming languages and software of today. The result is the paper that appears in this issue of the journal. It is co-authored by Dr. Ben Wiedermann who, until recently, was working with Barbara's research group as a visiting postdoctoral student. He is currently a visiting assistant professor at Harvey Mudd College.
In their paper, Drs. Ryder and Wiedermann follow a historical thread that describes the different kinds of analyses performed on software and the reasons for performing the analyses. A recurring theme through the paper is that modern programming languages have introduced new constructs that make analysis much more challenging and that may reduce the precision of the results. The authors ask programming language designers considering new features to think carefully about their potential effects on analyzability of programs including those features.