I do the inverse problem, create a correct compile list from a seed list of files.<div><br><div>I build a job list from all the parameter file names.</div><div>I enumerate the job list.</div><div>I scan the IMPORT statement of the next file.</div>
<div>I build standard file names from all the imported modules and add them to the job list.</div><div>Then I enumerate the internal data structure and write a correct compile order list.  <br><br>I can seed the list with library files first, such as  AlmGather.Order Oberon.Mod MyModule.Mod ~</div>
<div>Then all the Oberon dependencies are compiled before the remaining modules that are unique to MyModule.</div><div><br></div><div><br><div class="gmail_quote">On Mon, Dec 24, 2012 at 3:44 PM, Douglas G. Danforth <span dir="ltr">&lt;<a href="mailto:danforth@greenwoodfarm.com" target="_blank">danforth@greenwoodfarm.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 12/23/2012 9:02 AM, <a href="mailto:Aubrey.McIntosh@Alumni.UTexas.Net">Aubrey.McIntosh@Alumni.UTexas.Net</a> wrote:<br>

&gt; There is a command, System.Free, that will unload a module.  Normally<br>
&gt; it is not used, only when debugging a module.<br>
&gt; This is really powerful.  You can use everything in the system as it<br>
&gt; is, while unloading only 1 module (and any modules that call it).<br>
&gt;<br>
In BlackBox, for my own convenience, I wrote a module called MyProject<br>
what allows me to specify a single root module from which I can compile<br>
all dependent modules and unload all dependent modules.  This is useful<br>
if one modifies a module somewhere in the hierarchy and then needs to<br>
test the result (hence all modules need to be unloaded).  MyProject<br>
scans the IMPORT lists of all modules starting at the root.  It excludes<br>
BlackBox system modules.<br>
<br>
-Doug Danforth<br>
<br>
<br>
--<br>
<a href="mailto:Oberon@lists.inf.ethz.ch">Oberon@lists.inf.ethz.ch</a> mailing list for ETH Oberon and related systems<br>
<a href="https://lists.inf.ethz.ch/mailman/listinfo/oberon" target="_blank">https://lists.inf.ethz.ch/mailman/listinfo/oberon</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><font face="&#39;times new roman&#39;, serif">Aubrey McIntosh, Ph.D.<br>211 E. 5th St.<br>Morris MN 56267</font><div><div><span style="line-height:20px;background-color:rgb(255,255,255)"><font face="&#39;times new roman&#39;, serif">(512)-348-7401</font></span></div>
</div><div><div><br></div></div>
</div></div>