Article View: comp.lang.misc
Article #6551Re: Late Bloomers Revisited
From: Piercarlo Grandi
Date: Wed, 20 Dec 1989 15:30
Date: Wed, 20 Dec 1989 15:30
58 lines
3993 bytes
3993 bytes
Well, APL is different, because it has always had loyal commercial
followers, and IBM behind it. APL has never been really dead. Algol 68 is
essentially dead. There are a few users in the UK, NAG may still be
supporting their fine mathematical library with Algol 68 bindings, but
that's it mostly. Anybody still using Neliac? :->
I would like a copy of that Algol68 from Cambridge if I could have one
for UNIX.
Cambridge tend to be fairly liberal with it, at least to Universities (I got
a copy several years ago fairly easily). It is worth having a look at. They
have a very flexible intermediate code generation scheme, that ports easily.
The most likely use would be to explore in a real environment, (i.e.
'off the blackboard') what some of the data structuring ideas of Algol68
can bring to our in-house language design efforts.
Most of them have been borrowed into other languages, so overloading,
operators, etc... you may already know. On the other hand, in Algol 68 they
are beautifully integrated and more general than anywhere else (at times,
too much so). You may, if not already, want to have some hands experience
with Simula 67 as well, because a number of interesting ideas and concepts
from Simula 67 (block prefixing, inner, non nested flow control, class
bodies, inspecting, and a few more recent ones) are not simply there in most
common OO languages. On the other hand Simula 67 has some obvious drawbacks,
mostly because of backwards compatibility with Algol 60, like the forced use
of references for class objects.
Note: Bertrand Meyer, that writes at length about Simula 67 in his
book, seems not to have realized that the forced use of references
is a regrettable hack, not a feature. This is fairly clearly said in
the Simula 67 papers, and too bad that in Eiffel this hack survives,
only worse. By the way, I am working on a paper in which I purport
to show that this hack is the reason why Simula 67 has prefixing,
that was later misnomed inheritance, and that prefixing/inheritance
is superfluous and even negative in a language like C++ that does
not mandate the use of references.
Also, the Algol 68 Revised Report is a model of clarity, simplicity,
conciseness and elegance in language definition, and the use of two level
grammars exemplary, as is the careful choice of terminology. It is well
worth reading on its own sake.
By the way, somebody will disagree with me, but I really think that is true,
especially given the (at times excessive, e.g. coercions) sophistication of
the language. I think that the bad press that Algol 68 got in this area is
because of the original Report, which was not very nice (what about
"gomma"s? :->). The Revised Report is another things entirely.
Compare it with the reference manuals on Ada and C++, which languages are
certainly on the same level of sophistication, and have a good many quirks
as well, and you will see that the Algol 68 RR never fails to make clear
what is the answer to even the most obscure questions (admittedly, you can
formulate much more obscure questions about Ada and C++ than Algol 68).
--
Piercarlo "Peter" Grandi | ARPA: pcg%cs.aber.ac.uk@nsfnet-relay.ac.uk
Dept of CS, UCW Aberystwyth | UUCP: ...!mcvax!ukc!aber-cs!pcg
Penglais, Aberystwyth SY23 3BZ, UK | INET: pcg@cs.aber.ac.uk
Technical Details
Message-ID:
<1544@aber-cs.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!mcsun!ukc!dcl-cs!aber-cs!pcgShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!mcsun!ukc!dcl-cs!aber-cs!pcg
From: pcg@aber-cs.UUCP (Piercarlo Grandi)
Newsgroups: comp.lang.misc
Subject: Re: Late Bloomers Revisited
Message-ID: <1544@aber-cs.UUCP>
Date: 20 Dec 89 15:30:48 GMT
Reply-To: pcg@cs.aber.ac.uk (Piercarlo Grandi)
Organization: Dept of CS, UCW Aberystwyth
(Disclaimer: my statements are purely personal)
| Frankly, Algol 68 is now all but dead, but if somebody, e.g.
| Cambridge UK, were to release on the net, e.g. comp.sources.misc,
| as freeware the Algol68{C}
Lines: 58