home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.modula2
- Path: sparky!uunet!psgrain!hippo!cspdt.ru.ac.za!cspt
- From: cspt@giraffe.ru.ac.za (Prof. P. Terry)
- Subject: Standardisation - deja vu
- Message-ID: <cspt.33.715533220@giraffe.ru.ac.za>
- Lines: 112
- Sender: news@hippo.ru.ac.za
- Organization: Rhodes University, Grahamstown, South Africa
- Date: Thu, 3 Sep 1992 15:13:41 GMT
-
- Randy has suggested that new readers might like to see this for the first
- timeand others might like to see it again
-
- --------------
-
- I have heard it said that all we ever learn from studying History is that
- mankind learns nothing from History.
-
- Readers may be interested in the following extract from THE EMPEROR'S OLD
- CLOTHES - the ACM Turing Award lecture by Tony Hoare, 1980, which seems
- particularly relevant to our tale. You can read the full article in Comm
- ACM 24(2), 75-83 (1981); it has also been reprinted in "Essays in Computing
- Science" (ed Hoare and Jones, Prentice Hall 1989, ISBN 013 284027 8)
-
- Hoare is writing about Algol 68. Did anybody ever really use Algol 68? Do
- they still use Algol 68?
-
- -------------
-
- "During the period, August 1962 to October 1966, I attended every meeeting
- of the IFIP ALGOL working group. After completing our labours on the IFIP
- ALGOL subset, we started on the design of ALGOL X, the intended successor
- to ALGOL 60. More suggestions for new features were made and in May 1965,
- Niklaus Wirth was commissioned to collate them into a single language
- design. I was delighted by his draft design which avoided all the known
- defects of ALGOL 60 and included several new features, all of which could
- be simply and efficiently implemented, and safely and conveniently used.
-
- The description of the language was not yet complete. I worked hard on
- making suggestions for its improvement and so did many other mambers of our
- group. By the time of the next meeting in St Pierre de Chartreuse, France
- in October 1965, we had a draft of an excellent and realistic language
- design which was published in June 1966 as "A Contribution to the
- Development of ALGOL", in the COMMUNICATIONS OF THE ACM. It was
- implemented on the IBM 360 and given the title ALGOL W by its many happy
- users. It was not only a worthy successor of ALGOL 60, it was even a
- worthy predecessor of Pascal.
-
- At the same meeting, the ALGOL committee had placed before it, a short,
- incomplete and rather incomprehensible document, describing a different,
- more ambitious and, to me, a far less attractive language. I was
- astonished when the working group, consisting of all the best-known
- international experts of programming languages, resolved to lay aside the
- commissioned draft on which we had all been working and swallow a line with
- such an unattractive bait.
-
- This happened just one week after our inquest on the 503 Mark II software
- project. I gave desperate warnings against the obscurity, the complexity,
- and over-ambition of the new design, but my warnings went unheeded. I
- conclude that there are two ways of constructing a software design: One
- way is to make it so simple that there are obviously no deficiencies and
- the other way is to make it so complicated that there are no obvious
- deficiencies.
-
- The first method is far more difficult. It demands the same skill,
- devotion, insight, and even inspiration as the discovery of the simple
- physical laws which underlie the complex phenomena of nature. It also
- requires a willingness to accept objectives which are limited by
- physical, logical, and technological constraints, and to accept a
- compromise when conflicting objectives cannot be met. No committee will
- ever do this until it is too late.
-
- So it was with the ALGOL committee. Clearly the draft which it preferred
- was not yet perfect. So a new and final draft of the new ALGOL language
- design was promised in three months' time; it was to be submitted to the
- scrutiny of a subgroup of four members including myself. Three months came
- and went, without a word of the new draft. After six months, the subgroup
- met in the Netherlands. We had before us a longer and thicker document,
- full of errors corrected at the last minute, describing yet another, but to
- me equally unattractive, language. Niklaus Wirth and I spent some time
- trying to get removed some of the deficiencies in the design and in the
- description, but in vain. The completed final draft of the language was
- promised for the next meeting of the full ALGOL committee in three months'
- time.
-
- Three months come and went - not a word of the new draft appeared. After
- six months, in October 1966, the ALGOL working group met in Warsaw. It had
- before it an even longer and thicker document, full of errors corrected at
- the last minute, describing equally obscurely yet another different, and to
- me equally unattractive, language. The experts in the group could not see
- the defects of the design and they firmly resolved to adopt the draft
- believing it would be completed in three months. In vain, I urged them to
- remove some of the technical mistakes of the language, the predominance of
- references, the default type conversions. Far from wishing to simplify the
- language, the working group actually asked the authors to include even more
- complex features like overloading of operators and concurrency.
-
- When any language design project is nearing completion, there is always a
- mad rush to get new features added before standardization. The rush is mad
- indeed, because it leads in to a trap from which there is no escape. A
- feature which is omitted can always be added later, when its design and its
- implications are well understood. A feature which is included before it
- is fully understood can never be removed later.
-
- At last, in December 1968, in a mood of black depression, I attended the
- meeting in Munich at which our long-gestated monster was to come to birth
- and receive the name ALGOL 68. By this time, a number of other members of
- the group had become disillusioned, but too late: The committee was now
- packed with supporters of the language, which was sent up for promulgation
- by the higher committees of IFIP. The best we could do was to send with it
- a minority report, stating our considered view that, "...as a tool for the
- reliable creation of sophisticated programs, the language was a failure."
- This report was later suppressed by IFIP, an act which reminds me of the
- lines of Hilaire Belloc,
-
- But scientists who ought to know,
- Assure us that it must be so.
- Oh, let us never, never doubt
- What nobody is sure about.
-
- I did not attend any further meetings of that working group."
-
-