Tuesday, March 20, 2007

BNF, F IV, RIP

Off topic, John Backus, a giant of modern computing died Saturday, according to the New York Times. MIT has a brief biography, while there is more detailed information at IBM and his alma mater Columbia.

As the name suggests, Backus is the original of Backus-Naur Form (BNF), familiar to any computer science student who’s seen a formal computer language syntax. (Or even for those of us without formal computer science training who’ve written a language compiler). BNF dates to Algol 60, reflecting the efforts of Backus and Peter Naur. Of course, Algol is the progenitor of B (and thus C, C++ and Java) as well as Pascal (and with it Modula-2 and Ada).

But BNF (aka Backus Normal Form) was the second major contribution of Backus, who later won a Turing Award. In the 1950s, Backus led the IBM team that invented Fortran, the oldest surviving higher-level language. This led to Fortran II, Fortran IV, Fortran-77 and Fortran-99. Fortran-66 (a cleanup of Fortran IV) is claimed to be the first higher-level language standard in the world.

Even though I spent most of my programming career working in assembler or C, Fortran still has both strong sentimental and historical significance to me. Fortran IV was the language I learned in 1971 at the Explorer scout post (at Teledyne Ryan) on the IBM 1130 minicomputer, and the one I used to win the (jr. high) math category of the county science fair.

With Backus gone, there aren’t many comparable pioneers left. Grace Hopper died 15 years ago, while E.W. Dijkstra died nearly 5 years ago and Kenneth Iverson died a few years later. Niklaus Wirth is in his 70s and so may be around a while longer. However, Backus himself argued 30 years ago, that it’s time to move past Von Neumann-style programming languages.

No comments: