[Oberon] SYSTEM Modules

Paul Reed paulreed at paddedcell.com
Sun Nov 11 01:04:18 CET 2018


Hi Chris,

> Now I've thought about it some more, there is no need for any new /
> changed syntax. The rule that SYSTEM has to be in the import list if any
> SYSTEM
> procedures are being referenced is sufficient. All we need is a new
> implementation-dependent rule that when a SYSTEM procedure is referenced,
>  the SYSTEM qualifier is optional. If you want to be sure that your code
> would compile on other systems you can still use the SYSTEM qualifier.
> Whether it would then work on that other system is a question for another
>  day ;-)
>
> The fact that all SYSTEM procedure names are uppercase-only still makes
> them easy to search for in a large project.

That's a neat proposal!  BTW I totally agree with your point about forcing
qualified ids in general, my experience also when looking at large
codebases.  One of the first reasons I began to prefer Oberon to Pascal.

In terms of your code screenshots, I like both of them (although it did
make me wonder if these peripherals are in a Cortex bit-banding region -
it would be neater if they were! - but that's not your point).

However, my general experience has been that any labour-saving device I
used when writing code has seemed a terrible idea when trying to read it
again some time (possibly much) later.  I actually want it to be verbose
(but not overly so, of course) when I'm reading it.

So I would say I like your idea, against my better judgement ;-)

Paul




More information about the Oberon mailing list