anw@nott-cs.UUCP (11/11/88)
In <391@ubbpc.UUCP>, wgh@ubbpc.UUCP (William G. Hutchison) writes, amongst other things (in the Fortran group): > Here is the historical paradigm I am looking at: > Algol-60 was a breakthough, excellent language; widely used as a publication > language and used in Europe as a practical language. So a committee decided > to "improve" Algol-60 to Algol-68. You may recall the result: Algol-68 was > "improved" to the point of being unusable. Very few implementations ever were > finished: hardly anybody ever managed to get through the language spec. and follows up his own article in <392@ubbpc.UUCP> with: > By the way, here is some more discussion on how Algol-60 was "improved": > Algol-60 was "improved" to Algol-68 by a committee and the result was an > embarrassing debacle. > Algol-60 was really improved by Niklaus Wirth: > Algol-60 -> Algol-W -> Pascal -> Modula -> Modula 2 -> ... -> ??? > > Note that real improvements in language design seem to come from individuals > or small groups, not large committees! And so are myths perpetuated. Let's see: "A committee decided" -- well, not exactly. A committee was *charged with* developing Algol 60, in the light of the deficiencies in that language which had become apparent with use. Sound familiar? As is well-known, the sub-committee which eventually spawned '68 did not do so without causing a certain amount of controversy. Sound familiar? "A68 was unusable" -- well, not exactly. It was for some years the preferred language at a number of institutions, including this one. From 1972 to 1978, virtually all my own programs were written in A68, ranging from toys up to major projects of many thousand lines. Only yesterday I heard of a new major program for the semantic analysis of programs written in Pascal, Ada, Fortran, etc., consisting of some 70000 lines of A68. I *personally* taught over 1000 students in this Department Algol 68 as their first programming language; my *personal* opinion (which you may take with as many grains of salt as you like) is that A68 is easier to teach, *and* to learn, *and* to use, than A60 (which we used before 1972), and than Pascal (which we eventually were forced to switch to). Purely incidentally, in all the tests known to me, A68 programs benchmarked faster than their Fortran equivalents; advances in compiler technology may have changed that picture in the '80s. A68 is *still* in wide use in many places. "Very few implementations finished" -- well, not exactly. The current (and last [:-(]) Algol Bulletin lists 7 *current* implementations "which you can actually obtain and use", running on at least 20 different machine architectures, including all the popular ones, under at least 20 different operating systems, ditto; except indeed that the 68S which runs on "my" current system (PDP 11/44, Unix V7) doesn't get a mention. I guess those figures will be beaten by a few of the most popular languages, but not by many. "[unreadable] language spec" -- well, not exactly. The Revised Report was, for a while, routinely taught to our CS specialists, and they seemed to do OK in the consequent exams. *I* learned A68 from the Reports; they certainly weren't light bed-time reading; but no harder than the average graduate text. For the non-specialists, the difficulty of the Report is irrelevant; they learn from the more elementary texts. Just as every serious user of C "has" to read K&R, while ordinary users learn C from easier books. "embarrassing debacle" -- well, not exactly. Some of the opponents of A68, including some of the proponents of Pascal and other rivals, would have you think so. Do you, does anyone, have any *evidence*? How would you rate the relative importance and influence of A68 compared with, say, Simula, APL, Forth, Snobol, to pick a few perfectly respectable languages at random? Why should you (or anyone) think of A68, but not zillions of other languages, as an ED? "A60 really improved by NW" -- well, perhaps. It's debatable, but *I* would agree that Pascal, Modula2, etc are more useful languages than A60; but the implication is that they are better, too, than A68. They just aren't. They *really*, *really* aren't. Better PR job, yes. The point of relevance to Fortran 88 is that you certainly shouldn't think that design by individual is good, and by a committee is bad. Either can be good or bad. But standardisation *certainly* is a committee job, as C, Pascal and Fortran, to name but three, have found recently; no one person, no matter how talented, has the necessary width of expertise. [I've added "comp.lang.misc" to the groups for the A68 relevance; please consider carefully where you direct any follow-ups. -- ANW] -- Andy Walker, Maths Dept., Nott'm Univ., UK. anw@maths.nott.ac.uk