On Mon, Jul 17, 2017 at 9:47 AM, Robert Goldman <rpgold...@sift.net> wrote: > 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 function didn't exist before, you are introducing it. Why do you call it with strings? Shouldn't this function always be hidden behind a call to ADDITIONAL-INPUT-FILES, that does have convenience methods???
> 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. > Convenience functions are fine for API functions; just not for internals that ought to be hidden behind API functions anyway. —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org I don't count the word "god" as sacred, so I don't think religions that use it are worse than religions that don't. — Faré