[Oberon] Life without local procedures

Chris Burrows chris at cfbsoftware.com
Fri Feb 23 11:59:05 CET 2018

> -----Original Message-----
> From: Oberon [mailto:oberon-bounces at lists.inf.ethz.ch] On Behalf Of
> Andreas Pirklbauer
> Sent: Friday, 23 February 2018 5:52 PM
> To: ETH Oberon and related systems
> Subject: [Oberon] Life without local procedures
> Intermediate *constants* and *types* come for free, both in the
> compiler and at runtime, as their values are known at compile time.
> PS: This may have been one reason why access to intermediate
> *constants* and *types* is still allowed in the Oberon-07 revision,
> whereas access to intermediate *variables* has been disallowed

I was convinced by August Karlstrom's message that intermediate constants
and types as well as variables are now disallowed in the 2016 Revision of
the Oberon Language report (i.e. Oberon-07/16):


However, the PO2013 compiler has not yet been modified to disallow them.
Wirth has stated that the Oberon Report is the definition of the language
not the PO2013 compiler. The latter has a number of deviations,
restrictions, exceptions and extensions.

> (however: intermediate constants and types are *never* accessed from
> nested scopes in Oberon).

I'm confused. This appears to contradict the beginning of your 'PS' above.
When you say 'Oberon' here do you mean the PO2013 operating system?

Chris Burrows
CFB Software

More information about the Oberon mailing list