[Oberon] Unloading a project

Chris Burrows chris at cfbsoftware.com
Mon Dec 24 23:15:46 CET 2012

> -----Original Message-----
> From: Douglas G. Danforth [mailto:danforth at greenwoodfarm.com]
> Sent: Tuesday, 25 December 2012 8:15 AM
> To: ETH Oberon and related systems
> Subject: [Oberon] Unloading a project
> On 12/23/2012 9:02 AM, Aubrey.McIntosh at Alumni.UTexas.Net wrote:
> > There is a command, System.Free, that will unload a module.  Normally
> > it is not used, only when debugging a module.
> > This is really powerful.  You can use everything in the system as it
> > is, while unloading only 1 module (and any modules that call it).
> >

System.ShowModules is a good companion command for System.Free so you can
see what is loaded.

> In BlackBox, for my own convenience, I wrote a module called MyProject
> what allows me to specify a single root module from which I can compile
> all dependent modules and unload all dependent modules.  This is useful if
> one modifies a module somewhere in the hierarchy and then needs to test
> the result (hence all modules need to be unloaded).  MyProject scans the
> IMPORT lists of all modules starting at the root.  It excludes BlackBox
> system modules.

BlackBox also has two useful standard Menu commands similar to Oberon's
System.ShowModules and System.Free that I use a lot: 

  Info > Loaded Modules

Displays the list of loaded modules. You can highlight the ones you do not
want any more (related modules are usually grouped together) and then

  Dev > Unload Module List

Which then unloads the highlighted ones.


Chris Burrows
CFB Software

More information about the Oberon mailing list