[Oberon] Procedure variables and local procedures
chris
chris at gcjd.org
Fri Sep 29 16:58:03 CEST 2017
On Fri, 29 Sep 2017 15:22:57 +0200, Andreas Pirklbauer wrote:
> It’s that the language itself has changed with Oberon-07 around
> 2007, and for good reasons. For some additional insight into this
> decision, see ch. 12.2. on p.73 of
>
https://www.inf.ethz.ch/personal/wirth/CompilerConstruction/CompilerConstruction2.pdf
>
<https://www.inf.ethz.ch/personal/wirth/CompilerConstruction/CompilerConstruction2.pdf>
> ("In fact, programming experience has shown that the access of
> intermediate level variables is bad practice and better be avoided.
> Implementers must welcome this insight, as it makes the static link
> superfluous.”)
What are the good reasons? I cannot remember to have experienced any
problems caused by accessing intermediate variables. It was in Pascal /
Modula / Oberon-90 and all it's variations till Oberon-07. For example
Coco/R by Moessenboeck makes extensive use of local procedures and I
consider Coco/R not to be an example of bad practice.
Wirth himself does not give any argument, why this is "bad practice"
and the next sentence suggests that the motivation for removing this
feature was ambiguous at best ;-)
Greetings, chris
More information about the Oberon
mailing list