[Oberon] Oxford Oberon-2 Compiler and local procedures

Chris Burrows chris at cfbsoftware.com
Thu Nov 27 06:06:55 MET 2008


>-----Original Message-----
>From: oberon-bounces at lists.inf.ethz.ch 
>[mailto:oberon-bounces at lists.inf.ethz.ch] On Behalf Of Martin Bishop
>Sent: Thursday, 27 November 2008 2:50 PM
>To: ETH Oberon and related systems
>Subject: [Oberon] Oxford Oberon-2 Compiler and local procedures
>
>19: local procedure 'B' may not be used as a procedure value
>> A(2, B);
>> ^
>
>Why does it not allow B to be used as a procedure value?
>

This is a restriction of the Oberon language. Refer to Section 6.5
'Procedure Types' in the Oberon-2 Report. In part it states:

 "P must not be a predeclared or type-bound procedure nor may it be declared
local to another procedure."

Similarly in the Oberon-07 Report:

 "P must not be declared local to another procedure, and neither can it be a
standard procedure"

For previous discussions on this topic search Google Groups for the
keywords:

 oberon procedure variables local

http://groups.google.com

You will find some of the discussions in the Modula2 Usenet groups dating
back to the early 90's before the Oberon group was formed. One such
discussion of interest is titled 'Closures in Oberon - A Modest Proposal
(long)'

Regards,
Chris Burrows
Armaide: Oberon-07 ARM Development System for Windows
http://www.armaide.com



More information about the Oberon mailing list