chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Partial automation of egg dependencies


From: Mario Domenech Goulart
Subject: Re: Partial automation of egg dependencies
Date: Mon, 21 Nov 2022 18:01:54 +0100

On Mon, 21 Nov 2022 17:58:27 +0100 Mario Domenech Goulart 
<mario@parenteses.org> wrote:

> On Sun, 20 Nov 2022 20:55:09 +0200 Lassi Kortela <lassi@lassi.io> 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.
>
> My take on that as a user: I care about dependencies and tend to avoid
> eggs with many dependencies.  If I see `(auto-dependencies)' in an egg
> file, I don't know the dependencies of that egg.  I would not like that.
>
> Also, that would break the [reverse] dependency ranks of salmonella
> reports. Examples:
>
> * 
> http://salmonella-linux-x86-64.call-cc.org/master/gcc/linux/x86-64/2022/11/21/salmonella-report/ranks/deps.html
> * 
> http://salmonella-linux-x86-64.call-cc.org/master/gcc/linux/x86-64/2022/11/21/salmonella-report/ranks/rev-deps.html

Also the [reverse] dependency graph pages.  Examples:

* 
http://salmonella-linux-x86-64.call-cc.org/master/gcc/linux/x86-64/2022/11/21/salmonella-report/dep-graphs/srfi-99.html
* 
http://salmonella-linux-x86-64.call-cc.org/master/gcc/linux/x86-64/2022/11/21/salmonella-report/rev-dep-graphs/srfi-99.html

All the best.
Mario
-- 
http://parenteses.org/mario



reply via email to

[Prev in Thread] Current Thread [Next in Thread]