On Sun, Apr 18, 2010 at 4:56 PM, Robert Goldman <span dir="ltr"><<a href="mailto:rpgoldman@sift.info">rpgoldman@sift.info</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
So: what is the intended effect of :ASDF-DEPENDENCIES and<br>
:ASDF-OPTIONAL-DEPENDENCIES? At what point in the processing of the<br>
DEFSYSTEM are they processed? How do they interact with the processing<br>
of other DEFSYSTEM initargs? The answers to these questions should not<br>
be left to reading the code.<br clear="all"></blockquote></div><br>This depends on the level of implementation we achieve.<br><br>Ideally the situation could be such that the loading of dependencies could be delayed until the system is actually used. In other words, load the system definition using the base class, record components, dependencies, etc, Only when the system is actually loaded, compute the dependencies which are present and can be used and change the class using the extensions which are really available.<br>
<br>In practice it might not be that simple. There are situations right now in which it might have been useful to load the dependency _before_ even reading the system definition. These situations require further fixes:<br>
<br>- Right now people are using symbols in other packages.<br> Solution: prevent this by specification; prefixed symbols should be strings and apply the previous rule<br><br>- Some systems use conditional reading #+/#-<br>
Solution: fix the use of :FEATURE in the DEFSYSTEM specification<br><br>- Some systems use #. plus functions they define<br> Solution: use another readtable.<br><br>-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br>
<a href="http://tream.dreamhosters.com">http://tream.dreamhosters.com</a><br>