[Oberon] Re (2): New complaint from Fox.

peter at easthope.ca peter at easthope.ca
Fri Mar 2 23:27:41 CET 2018

From:	Guenter Feldmann <fld at uni-bremen.de>
> I could compile your Oberon.Sort.Mod without any problems in
> LinuxA2 (7600), DarwinA2 (7600) and SolarisA2 (7600).

From:	Felix Friedrich <felix.friedrich at inf.ethz.ch>
> I cannot reproduce your problem. Neither in Windows A2, nor in a 
> freshly built Linux A2, nor from within LinuxA2 Generic rev. 7600
> Maybe there is some hidden character in your file?

Apologies for the trouble.  It was an even worse blunder by me.  Some 
time after posting Sort to the book I changed in my copy,
AddSuffix(Documents.MarkedDoc().name, suffixArray, name)
AddSuffix(D.name, suffixArray, name)
which, in foggy thinking, must have seemed OK after 
D := Documents.MarkedDoc() .

My explanation of why that can't work: a Document has a name and is an 
extension of a Gadgets.Frame, which is an extension of a 
Display.Frame, which is an extension of an Objects.Object.  D is an 
Object; therefore D := Documents.MarkedDoc() is OK.  But an Object 
doesn't have a name.  Documents.MarkedDoc().name can exist 
but D.name never exists.  Corrections welcome.

Incidentally, Oberon.Sort.Mod was one of the earliest sources posted 
to the wikibook and indentation was handled badly by MediaWiki.Markup.  
The current MediaWiki should yield a module file as original, including 
original indentation.  Described in 
https://en.wikibooks.org/wiki/Oberon#Dataflow_of_a_Text .
Will install new markup for Oberon.Sort.Mod soon.

Also incidentally, Oberon.Documents.MarkedDoc() has 
	IF TRUE (* Oberon.Pointer.on *) THEN
		M.X := Oberon.Pointer.X; M.Y := Oberon.Pointer.Y;
What was the IF meant to achieve?  Is there any reason to keep it?

Thanks,      ... Lyall E.


123456789 123456789 123456789 123456789 123456789 123456789 123456789
Tel: +1 360 639 0202                      Pender Is.: +1 250 629 3757
http://easthope.ca/Peter.html              Bcc: peter at easthope. ca

More information about the Oberon mailing list