[Oberon] SYSTEM Modules

Diego Sardina dsar at eml.cc
Sun Nov 11 10:59:41 CET 2018


> 
> I like the Oberon idea of fully qualified names. The Modula syntax where 
> you dequalify your names during the IMPORT by a list of procedures opens 
> up a lot of confusion while maintaing different sources, with different 
> dequalifying IMPORT lists.
> 

Yes, qualified name for ever!

My idea in general is to avoid any change to the language, especially those constructs that demonstrated to create problems in maintainability.

Why don't enhance IDE capabilities?

For example an option "Hide SYSTEM qualified identifiers" and every "SYSTEM." visually disappear.

Or being more general, a possibility to hide a particular qualified identifier of an imported module via a menu or via a particular comment (that only the IDE can interpret).

IMPORT
  (* +HIDE *) Display; 


Another possibility is an IDE feature to wrap all exported procedures of an imported module.

PROCEDURE Foo;
BEGIN
    ImportedModule.Foo
END Foo;

The problem with this possibility is that it can't be applied to SYSTEM procedures because the language can't express some of them (PUT and GET are polymorphic, VAL requires a type name, etc..).





More information about the Oberon mailing list