Trivia: Algol 68R and colons in conformity clauses

Jose E. Marchesi jemarch@gnu.org
Sat May 9 01:06:16 GMT 2026


>> Jose and everyone,
>>
>> On Fri, May 8, 2026 at 3:54 PM Jose E. Marchesi <jemarch@gnu.org> wrote:
>>
>>>
>>> I have often wondered why I kept finding Algol 68 snippets out there
>>> reading like:
>>>
>>>   case foo in (int) bleh, (real) blah esac
>>>
>>> rather than
>>>
>>>   case foo in (int): bleh, (real): blah esac
>>>
>>>
>>> An example is the ELLA 2000 sources I am porting to GNU Algol 68.
>>>
>>> Today I learned, it is because the Algol 68R dialect didn't use colons
>>> after the specifications in conformity clauses.
>>>
>>> They fixed it in Algol 68RS, which implemented the Revised language more
>>> accurately.
>>>
>>> Just the trivia of the day ;)
>>>
>>
>> Somewhere in the house I have a hardcopy of the non-revised report; I need
>> to find it and refresh my memory as to what crept in (besides the closed
>> syntax).
>
> Note that omitting the colons in conformity clause specs appeared in the
> Algol 68R already adapted to the Revised language.
>
> The unrevised language didn't feature conformity clauses.  Instead, you
> used these clauses whose name I can't recall now, with a representation
> involving ::=, in which you basically forced an united value as one of
> its moods in "free form".

This would be a sort of explicit "deuniting".


More information about the Algol68 mailing list