[Oberon] IMPORT Modules: why does order matter?

Till Oliver Knoll till.oliver.knoll at gmail.com
Sun Mar 3 10:26:50 CET 2019

Am 03.03.19 um 01:08 schrieb Jörg Straube:
> Oliver
>> At least my version of Oberon is missing now the Out module
> I have an Out.Mod and compiled it on FPGA. I can send it if you want. I added a simple printf() to it with support of \n, \t, %d and %x

Well, my point was not so much about "how to get an Out module" (it was
pretty straight forward in my case to replace the few Out calls with
module Texts and Oberon.Log), but more to hightlight that it may be due
to different variants of Oberon that people are using these days, and
that the "invalid import order" error could hence be specific to my
variant ("Oberon Core").

But as others have pointed out there is no module Out anymore in
"Project Oberon 2013".

But thank you anyway for the offer :)

> Yes, I get this error as well. Fixing that would need some code. ORB.Import and ORB.ThisModule have to be adapted.

I don't think it is a matter of "fixing": the Oberon compiler had this
"feature" already to import "in any order". So this must have been a
concious design decision, and I was wondering about the "why".

But yes, apparently in e.g. "Experimental Oberon" that feature is back.


More information about the Oberon mailing list