On Sat, Feb 5, 2011 at 5:18 PM, Faré <span dir="ltr"><<a href="mailto:fahree@gmail.com">fahree@gmail.com</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;">
<div id=":oy">On 5 February 2011 11:13, Juan Jose Garcia-Ripoll<br>
<div class="im"><<a href="mailto:juanjose.garciaripoll@googlemail.com">juanjose.garciaripoll@googlemail.com</a>> wrote:<br>
</div><div class="im">> On Sat, Feb 5, 2011 at 4:06 PM, Faré <<a href="mailto:fahree@gmail.com">fahree@gmail.com</a>> wrote:<br>
</div><div class="im">> Fare, could you please go back to the other method I posted. This one does<br>
> not allow one to *CHANGE* the way COMPILE-FILE* behaves.<br>
><br>
</div>Do you need to change it dynamically? Why not just have a static #+ecl<br>
or something? don't understand the use case.<br></div></blockquote><div><br>Yes, it has to be changeable if the user decides to switch compilers, for whatever reason. To name one, Windows users will get by default a bytecodes compiler shipped in, and will have to switch to the lisp->C compiler at run time if they have MSVC around (which is rarely the case). And the converse should be possible: Linux users could have lisp->C preloaded and switch to bytecodes compilation for a session. All this should be doable with the same ASDF image.<br>
<br>As you see, it would even be better to have a global variable ASDF:*COMPILE-FILE-FUNCTION* specify who does what instead of having us mess with function definitions.<br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div id=":oy">Since all this is ECL-specific (so far), I suppose you could use<br>
ADVISE, or whatever ECL-specific hooking mechanism exists, or<br>
delete-method calls.<br>
<div class="im"></div></div></blockquote></div><br>But do you realize, that precisely because this is very ECL specific, there is no need to complicate COMPILE-FILE* and the way we have to interfere with it.<br><br>Design of ASDF should expose only a minimal, well thought out API. Making COMPILE-FILE* a generic function, when the types of arguments is fixed, just for the sake of :AROUND methods is absurd. It forces non portable code (I call MOP nonportable) just to change/delete a feature.<br>
<br>If you want me to put it another way. The patch I submitted was just to get rid of an :AROUND method, and you just forced me to add another one + MOP code in my own system.<br><br>Please, reconsider this,<br><br>Juanjo<br clear="all">
<br>-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://juanjose.garciaripoll.googlepages.com" target="_blank">http://juanjose.garciaripoll.googlepages.com</a><br>