It's ambiguous. There can be (and are) eggs that export procedures of the same name.
Dependencies shouldn't get out of sync, and updated versions may change what is exported... so I would question exactly what you are doing that would require such functionality and whether there would be a better development methodology that wouldn't shift the burden from paying attention to what one is using to a psychic programme that does what you mean (not what you tell it). -elf On 20 November 2022 20:55:09 GMT+02:00, Lassi Kortela <[email protected]> wrote: >I have a .egg file for a portable Scheme program substantial enough and >fast-moving enough that the dependencies are constantly getting out of sync. > >Would it be possible to add a feature something like this? > >(extension foo.bar > (source "bar.sld") > (auto-dependencies) ; <-- The new feature. > (csc-options "-R" "r7rs" "-X" "r7rs")) > >auto-dependencies would compute the deps by traversing the given source file. >It would look at csc-options and notice that r7rs is being used. Then expect >an R7RS-style define-library form in bar.sld, look at (import ...) libraries >matching those in the .egg and add those to component-dependencies, as well as >traverse all (include "...") and add those to (source-dependencies ...). > >If csc-options doesn't say r7rs, it would do the same, but expect Chicken >module syntax instead. > >I wrote some code to grovel r7rs libraries, and there's probably similar stuff >in csm and Akku.scm too. So if the feature is ok we could stitch together the >implementation from these. >
