[Oberon] Clarifying type compatibility in Oberon-07

Diego Sardina dsar at eml.cc
Thu Oct 12 16:34:47 CEST 2017


I really don't understand all this brainstorming.

Wirth said that these are to be considered extensions to the language
report and that a compiler shouldn't be taken as reference.

Also the grammar doesn't match with the PO2013 compiler at FPSection:

FPSection  =  [VAR] ident {"," ident} ":" FormalType. 
FormalType  =  {ARRAY OF} qualident. 

PO2013 compiler accepts this declaration:

PROCEDURE Foo (p: PROCEDURE(i: INTEGER));

But this doesn't match with Oberon-07 grammar.

Qualident means that I have to introduce a type name, then I don't see
how structural equivalence is useful.

If you compare Oberon and Oberon-07 reports, except type inclusion and
assignment of open arrays, the type system doesn't change.

Wirth developed a compiler that doesn't match with the report and this
is also claimed by him.
Where is the problem?


--
Diego Sardina



More information about the Oberon mailing list