rpgoldman at sift.net
Tue Sep 13 02:31:04 UTC 2016
On 9/12/16 Sep 12 -9:26 PM, Robert Goldman wrote:
> On 9/12/16 Sep 12 -8:54 PM, Faré wrote:
>> PS: as for touch-file, it only modifies the asdf-cache by default; it
>> won't hit the filesystem unless you explicitly use :in-filesystem t.
> OK, I was confused by the extremely odd conditional in the middle of
> that function:
> See the following:
> (unless in-filesystem
> (error "Y U NO use stamp cache?"))
> (line 323 of script-support.lisp)
> This is pretty odd, because it's only reachable if.... (NOT IN-FILESYSTEM).
> I'm going to kill that UNLESS. I'll put it back if it's useful.
Actually, the more I look at this, the more odd it seems.
We don't simply use the cache if IN-FILESYSTEM is NIL -- we do it only
if IN-FILESYSTEM is NIL and *ASDF-CACHE* is bound (and we check the
Can't we just branch on IN-FILESYSTEM, and error out if (NOT
IN-FILESYSTEM) and *ASDF-CACHE* is NIL? In that case, the programmer
has said: "I want to use the cache," and we are quietly ignoring the
request and using the filesystem. I'd rather we blow up when we flout
the programmer's directive, instead of trying to DWIM it in a weird way.
Is that an acceptable mod? I'm going to push a candidate patch.
More information about the asdf-devel