|
|
|
|
|
by DeltaMetro
1457 days ago
|
|
I had a look at the Oberon+ language definition and noted that one of the most annoying Oberon shortcomings (as compared to Modula-3) still remain:
...from the point of definition to the end of the scope...
Oberon+ should have a look at Active Oberon 2019, not for its "active" aspect, but for its syntactical and semantic improvements, like the correction of the above problem. |
|
Not sure what you mean. Is it about the fact that all variables are declared in the header of the procedure, i.e. not somewhere in the body as e.g. in C# or Java? This is actually the same with Active Oberon and Modula-3. In case you mean that the order of declarations is relevant, Oberon+ assumes at least a two pass parser by design; a declaration sequence can contain more than one CONST, TYPE and VAR section in arbitrary order, interleaved with procedures, and the order of declaration is not relevant; see e.g. https://github.com/oberon-lang/specification/blob/master/The... and https://oberon-lang.github.io/2021/07/16/comparing-oberon+-w...