[Oberon] Oberon Text and new systems; was Re (n): Question about Oakwood guidelines and design choices

peter at easthope.ca peter at easthope.ca
Tue Jun 8 18:24:51 CEST 2021

From:	"Skulski, Wojciech" <skulski at pas.rochester.edu>
Date:	Mon, 7 Jun 2021 17:21:05 +0000
> Since you said Text, please be aware that there are multiple Text 
> flavors out there. 

The section at https://en.wikibooks.org/wiki/Oberon#Oberon_Text is 
intended to be understandable to a novice.  Under the subheading 
"Additional Details" is the link to 
https://en.wikibooks.org/wiki/Oberon/Text where the variant systems 
are addressed in more detail.  Sorry to say, V4 is not yet included.  =8~(

When encountering Text, visualization of the record types was 
difficult for me.  The tables you see in the second page cited above 
are my way of mitigating difficulty.

> 3) I believe that System 3 did about the same as #2 above, but in a 
> more complex way. 

In ETH Oberon and in A2, Texts.TextDesc is an extension of 
Objects.ObjDesc.  Consequently, understanding the Text type requires 
understanding records defined in two modules--Objects and Texts.  An 
additional difficulty for a newbie.  In the tables, the extension is 
represented by background color shading. The display of types 
concisely in one place should help a novice.

> 6) I suspect that porting #2 [V4] to the FPGA Oberon would entail a 
> complete replacement of the 2013 Text and text frames with the ones 
> from Linz V4. This will not be easy not because of the code, but 
> because of the language: "they" changed the language so V4 will no 
> longer compile.

Didn't Andreas discuss or mention that months ago.  Three steps to put 
an "old" system, S, on a new machine.  

(1) In an extant S, translate the sources into Oberon-07. In the 
process, the sources can be recompiled by the compiler in S. This is 
just work; time consuming but not lethal.  =8~)

(2) In the new system, compile all the sources of S.

(3) Install and run the revised S on the new machine.

S can be V4 or ETH Oberon or another.

> I am afraid that (4+Gadgets) is unlikely to fit into a small memory 
> footprint.

For basic Text functionality, the complete Gadgets machinery is not 
necessary. Build a system with the Objects module and the Texts 
module?  I haven't evaluated the memory requirement.

If someone drafts a V4 section and adds it to 
https://en.wikibooks.org/wiki/Oberon/Text , the contribution will be 
welcome.  Accept that merciless editing can happen.  =8~|

Should a universal Oberon Text type be derived from V4, ETH Oberon or 
V5?  Also acknowledge that HTML5 is far more ubiquitous than any 
Oberon Text type.  Hypothetically an Oberon system can be built with 
plain ASCII text and HTML5 and no Oberon Text. Discussion by the 
knowledgeale and experienced people can help.

Regards,                      ... P.L.
tel: +1 604 670 0140            Bcc: peter at easthope. ca

More information about the Oberon mailing list