Conrad Weisert, October 14, 2011*
ŠInformation Disciplines, Inc.
NOTE: This document may be circulated or quoted from freely,
as long as the copyright credit is included.
*—This article was written back in July, but was held for web publication pending confirmations by various sources.
|"Niklaus Wirth, the designer of Pascal (and other languages since then),
states that a 'programming language is as good as its compiler'. The first
compilers for PL/1 were so buggy that the language's use was affected.
When Ada was designed, the design team, remembering the problems with
PL/1, designed validation requirements that a compiler would have to pass
to be considered a legal Ada compiler "
—Worcester Polytechnic Institute, course material
Students in that course will no doubt come away quite sure that a major cause of PL/1's failure to gain sufficient market share for long-term survival was the poor quality of early compilers, mainly from IBM. There's just one problem with that: It's untrue!
Twenty years ago such an assertion would quickly have provoked responses from people who actually used IBM's PL/1 compilers in the late 1960s. Today, however, it goes unchallenged, because many of the people who had first-hand knowledge have now:
Tossing in a famous authority is helpful. The writer didn't actually claim that Niklaus Wirth thought that early PL/I compilers were full of bugs. but the proximity of the citation in the paragraph could easily convey that impression to a naïve student.
If the paragraph at the top of this article had appeared in a student's research paper, we can easily imagine a professor's challenges:
|The first compilers for PL/1 were so buggy|
that the language's use was affected.
|according to whom?
|When Ada was designed, the design team,
remembering the problems with PL/1, . . .
This article isn't about the quality of early PL/1 compilers or the reasons behind PL/1's failure to attain market share. It's mainly about the growing frequency of spreading folklore and wishful thinking as historical fact in Computer Science.
Since I brought it up as an example, however, I shall try to set the record straight on PL/1:
RECORD I-O, needed for most business applications.
I've checked the above with a half-dozen colleagues who were active in using PL/I daily in the late 1960s and early 1970s, and they concur. If you know of counter examples, let me know, and I'll revise this article accordingly.
Last modified October 14, 2011
Return to IDI home page