read-depend branch is ready for another review...

Robert Goldman rpgoldman at sift.net
Mon Jul 17 13:47:20 UTC 2017


On 7/16/17 Jul 16 -10:31 PM, Faré wrote:
>>> 1. what's in FIND-SYSTEM is accessors to %ADDITIONAL-INPUT-FILES, not
>>> ADDITIONAL-INPUT-FILES and the former has setters as well as getters, so
>>> I wasn't sure I could use ADDITIONAL-INPUT-FILES.  I'll check.
>>
>> Checked and confirmed this -- %ADDITIONAL-INPUT-FILES takes only a
>> COMPONENT as argument, so it can't use the convenience methods macro.
>>
> Why do you need convenience methods for the internal accessor
> %ADDITIONAL-INPUT-FILES ? Can't users who need convenience methods
> (including internal functions) just use ADDITIONAL-INPUT-FILES, and
> let *its* convenience methods do the trick?

I was just being lazy, but I definitely found that the raw accessor was
being called with strings.  Our code structure doesn't make it easy to
be tidy about this.  The very presence of the action convenience files
encourages being haphazard about typing, and the fact that CL gives us
next to no compile time support makes it worse.  Even if I track down
all the callers and do the type correction myself, the next time someone
calls it (since we have effectively told the programmer "it's ok to use
component and action designators everywhere" by having arguments called
ACTION and COMPONENT that actually mean ACTION-DESIGNATOR and
COMPONENT-DESIGNATOR), we could be back in the soup.

I can fix this, but I think its symptomatic of a real maintenance issue.
> 
>>> 2.  I'll fix this, thanks.
>>
>> I don't fully understand.  I'm looking, and the APPEND call is in the
>> scope of DO-ASDF-CACHE, AFAICT:
>>
>>   ;; Memoize input files.
>>   (defmethod input-files :around (operation component)
>>     (do-asdf-cache `(input-files ,operation ,component)
>>       ;; get the additional input files, if any
>>       (append (call-next-method)
>>               ;; must come after the first, for other code that
>>               ;; assumes the first will be the "key" file
>>               (additional-input-files operation component))))
>>
> Oh, right. Somehow I misread that.
> 
>> If that's all, I can merge this into the plan branch, and then we should
>> fix the ABCL issues.
>>
> Yes, it otherwise looks good.

OK, I'll get %ADDITIONAL-INPUT-FILES seen to, and review the
documentation, and then we can merge.

I'll look into ABCL as time permits.
> 
> I have a few tweaks to do afterwards: moving the 3.3.0 number past
> your patches, some comment tweaks I have locally, and pushing back the
> schedule of warnings to a further release (keep issuing only
> style-warnings for deprecated functions, for now).
> 
> What about merging plan into master after I do that?
> 
> —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
> Any sufficiently unadvanced science fiction is indistinguishable from fantasy.
> 




More information about the asdf-devel mailing list