Re: :around methods on LOAD-OP and COMPILE-OP

Christophe Rhodes <[email protected]> Thu, 04 Sep 2008 12:06:24 +0100
Newsgroups gmane.lisp.cclan.general
Message-ID <[email protected]>
"Attila Lendvai" <[email protected]> writes:

>> I also think that the try-recompiling restart for compile-op is
>> useless, because asdf already sets up a retry restart; I'd like to
>> delete it, but I have a sneaking suspicion that someone will complain
>> if I do.  If I don't hear confirmation about that, I'll delete it
>> anyway and suck up the consequences.
>
> does the original retry restart always recompile? i think sometimes it
> happens that the file actually compiles but with some warning and due
> to that asdf stops with an error. in such a situation the original
> retry restart will not try to recompile the file, only reload it.
> probably the same applies to load-time errors.
>
> i admit that i may be missing something, or maybe i was ignorant when
> dealing with asdf restarts, but i did use try-recompiling often
> recently.

I think you are missing something.

If the compile-op fails (i.e. if compile-file returns a true tertiary
value), the retry restart will retry the compile-op, so you can go and
edit the file and ask for a recompilation that way.

The annoying case is when compile-op succeeds (no compilation errors
or full warnings) but the subsequent load-op signals an error (say
because some class is not yet defined).  At that point, the retry
restart will attempt to reload the fasl -- not completely useless, but
needing a little bit more manual intervention.  It is for removing
that manual intervention that the try-recompiling restart is most
useful, I think; simply edit the source file and select that restart.
But for compile-op failures, I think the TRY-RECOMPILING and RETRY
restarts have equivalent behaviour.

Best,

Christophe

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/