On Dec 17, 2020, at 4:31 PM, John Cowan <cowan(a)ccil.org> wrote:
On Thu, Dec 17, 2020 at 11:35 AM Bakul Shah <bakul(a)iitbombay.org
<mailto:bakul@iitbombay.org>> wrote:
Funny how we seem to rehash the same things over the years!
Ars longa, vita brevis.
In a 1988 comp.lang.misc thread when I expressed hope that "a major
subset of Algol 68 with a new and concise syntax (sort of like C's)
can make a very elegant, type safe and well rounded language.",
Thanks. The URL is
<https://groups.google.com/u/2/g/comp.lang.misc/c/qkmB_3zuC7Y/m/-Bk9z-oZaqYJ
<https://groups.google.com/u/2/g/comp.lang.misc/c/qkmB_3zuC7Y/m/-Bk9z-oZaqYJ>>.
Piet
van Oostrum[1] commented the combination of dynamic arrays *and*
unions forced the use of GC in Algol68. Either feature by themselves
wouldn't have required GC!
I can't find this anywhere in the thread or elsewhere in comp.lang.misc. Do you
have a reference?
Here's the link:
https://groups.google.com/g/comp.lang.misc/c/qkmB_3zuC7Y/m/erN_TfDF38IJ
In any case, I don't understand how a safe
language with pointers can avoid the need for *some* kind of GC.
Note that I was talking about a "type safe" subset as opposed to as stricter
"safe" subset.
One can argue that Pascal was type safe even with new() / dispose() for pointers.
[Referencing a dead pointer is a runtime error, just like divide by zero]
I think his point was more that each of dynamic arrays by themselves wouldn't
require
GC and the same for unions. Remember I was talking about a vague typesafe subset.
So the question is which features to remove? Rmoving pointers would certainly be under
consideration.
[My exposure to Algol68 was when I had stumbled upon
Brailsford and
Walker's wonderful "Introductory Algol 68 programming"
Alas, I can only find this at one shady site, or in hardback at Amazon for USD 20 which
is a lot for a pig in a poke (no preview).
I think it was less useful as an introduction to programming but was just right for me!
There are other introductory books/articles including one by Andrew Tanenbaum:
https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.4668&rep=r…
Lindsey and van der Muellen's Informal Introduction to Algol 68:
http://www.softwarepreservation.org/projects/ALGOL/book/Lindsey_van_der_Meu…
J.E.L.Peck's Algol Companion may also be of help:
http://www.softwarepreservation.org/projects/ALGOL/paper/An%20Algol%2068%20…
I have heard good things about Frank Pagan's A Practical Guide to Algol 68...