[Oberon] Module aliases - what is the correct way to handle them

Andreas Pirklbauer andreas_pirklbauer at yahoo.com
Sat Feb 15 09:17:53 CET 2020


It seems that procedure ORB.ThisModule of FPGA Oberon may
create some confusion at times. Indeed, it is called from 2 different
places: from Import (non = TRUE) and from InType (non = FALSE).

This is why in the latest iteration on module aliases in [*] below,
procedure ThisModule has been eliminated altogether and split
into 2 procedures *Import* and *Reimport*. This nicely separates
concerns and, in my view, improves readability considerably.

PS: Thanks everyone for contributing to this topic in the past 2-3
days. We now have working solution for general case which adds
about 25 lines to FPGA Oberon. The compiler implementor now
at least has a choice whether to stick with a more "restrictive but
super-simple" implementation (as I have done in Extended
Oberon) or decide to adopt the general case at a cost of 25 lines.

[*] http://github.com/andreaspirklbauer/Oberon-test-module-aliases




More information about the Oberon mailing list