[Oberon] Re (2): Re (2): The Out module.

peter at easthope.ca peter at easthope.ca
Tue Jan 15 16:29:55 CET 2019

From:	Chris Burrows <chris at cfbsoftware.com>
Date:	Mon, 14 Jan 2019 07:16:50 +1030
> Be aware that in Oberon-07 variables are now exported as read-only.

Date:	Tue, 15 Jan 2019 20:53:17 +1030
> ... the simpler boolean variable version. 

In Active Oberon?  In Oberon-07, the switch is by an exported 
procedure.  Also I'm trying to avoid frequent appearance of IF.  What 
other way in Oberon-07?

> It does not look 'as simple as possible' to me ;-)

That's why I mentioned "devious".  A simpler (simplest?) way is 
immediate and delayed versions of each procedure.  Eg. Out.Char(ch) 
and Out.CharImmediate(ch), or Out.CharDelayed(ch) and Out.Char(ch).  
Except that Out.Ln() is only immediate. A bigger module of course.

Another way is to exclude the immediate case.  In Out, provide only 
Joerg's delay. For "immediate" output, fall back to Texts.WriteX().  
Seems a reasonable compromise.

Or just exclude Out?  Does anyone use Out in V5?  What works in reality?

Thanks,                                  ... Lyall E.

Message composed and transmitted by software designed to avoid the 
complication, overhead and vulnerability of antivirus software.

123456789 123456789 123456789 123456789 123456789 123456789 123456789
Tel: +1 360 639 0202                                  +1 
http://easthope.ca/Peter.html              Bcc: peter at easthope. ca

More information about the Oberon mailing list