[Oberon] VAR params at the call site [WAS: Re: Micron is a modernOberon with the power of C]

Rochus Keller me at rochus-keller.ch
Mon Nov 9 18:56:18 CET 2026


@ Paul 

Looks like a good approach. In C# we have to write "ref" before the actual parameter in that case which is about the same effort. Are your Oberon dialects online somewhere?

Best regards
R.K.
_______________________________
From: Paul Reed
Sent on: Mon, 09 Nov 2026 16:44:59 +0100
To: ETH Oberon and related systems
Cc: 
Subject: [Oberon] VAR params at the call site [WAS: Re: Micron is a modernOberon with the power of C]

On 2026-11-08 17:22, Rochus Keller wrote:
> "Sorter.Sort(@a,.." shows at the call site that a may change, which you 
> don't see with a VAR param.

Agreed - one of my own dialects of Oberon requires VAR in the place of 
the call as well, because coming from C/C++ I didn't like not seeing 
that it was a VAR param. I have things like:

   ...
   Texts.WriteString(VAR W, "Hello"); Texts.WriteLn(VAR W); 
Texts.Append(Oberon.Log, W.buf);
   ...

so I can see more easily what are pointers and what are VAR params.

A command-line switch relaxes the VAR requirement, e.g. in order to 
compile Project Oberon code.

Cheers
Paul
--
Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
https://lists.inf.ethz.ch/mailman/listinfo/oberon




More information about the Oberon mailing list