[Oberon] Module finalization - language construct or system call

Joerg joerg.straube at iaeth.ch
Mon Jan 4 17:04:36 CET 2021

Generally, I agree with Hellwig that I like FINAL, Finalize... better than Close. https://en.wikipedia.org/wiki/Finalizer

If we are just in the mood to invent new languages, why not call it FREE (because that code will be triggered by System.Free) or UNLOAD as Modules triggers the code when it unloads the module. Or DESTROY as other languages make a distinction between finalizers (called by GC) and destructors (deterministic)...

We can do whatever we want, but it won't be Oberon-07 anymore...


Am 04.01.21, 16:29 schrieb "Oberon im Auftrag von Hellwig Geisse" <oberon-bounces at lists.inf.ethz.ch im Auftrag von hellwig.geisse at mni.thm.de>:

    Hi Andreas,

    On Mo, 2021-01-04 at 15:50 +0100, Andreas Pirklbauer wrote:
    > I would like to solicit input on whether to realize “module finalization”
    > via a CLOSE language construct or via a system call such as
    > Modules.Close. See the test module M below.  Both are currently
    > available in Extended Oberon, both are trivial to implement (only
    > a few lines each), but the question is what one *should* offer.

    I would opt for a proper language construct, as this
    is a symmetrical complement to the initialization of
    a module. I would however prefer a different keyword
    for it, e.g. "FINAL", because "CLOSE" has a tight
    connotation to files, at least for me.

    Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems

More information about the Oberon mailing list