<div class="gmail_quote">On Wed, Mar 17, 2010 at 3:23 PM, Robert Goldman <span dir="ltr"><<a href="mailto:rpgoldman@sift.info">rpgoldman@sift.info</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">E.g., it seems that we can fix one of Juanjo's two problems by simply</div>
recasting one of his INPUT-FILES (?) primary method as an :AROUND method.<br></blockquote><div><br></div><div>Around methods are a hack. If you later on decide to add an around method to ASDF then you break whatever I do. If some user decides to add an around method then it will break again.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">As for the problem with TRAVERSE, I don't understand enough what the<br>
problem is.  Can it be solved simply by adding something like:<br>
 (defmethod PERFORM ((op lib-op) (c cl-source-file))<br>
  (values))<br></blockquote><div><br></div><div>What if somebody adds another component to a system? Right now this means I have to track all existing ASDF components, know in advance which ones may form part of the module, because as it was said I am not allowed to write a method with a generic signature PERFORM ((op lib-op) (c component)) because COMPONENT is a class that ASDF defines.</div>
<div><br></div><div>Summing up, please you all consider this: if you forbid --in the ASDF specification-- to write any method that uses directly ASDF classes that means we are not allowed to extend ASDF systems at all.</div>
<div> * We would have to define our own system, module, component, operations, and these would no be allowed to coexist with ASDF systems.</div><div> * We would not be allowed to use the same *.asd systems that other library defines because those use ASDF's system classes.</div>
<div> * We would not be allowed to combine ASDF's LOAD-OP operations with our own components (precompiled files, etc) because we are not allowed to write methods using LOAD-OP and our extended classes.</div><div><br></div>
<div>Juanjo</div></div><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>