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: felix . winkelmann
Subject: Re: Partial automation of egg dependencies
Date: Sun, 20 Nov 2022 21:43:11 +0100

> 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.

That is quite a lot of stuff... You mention csm already, which does
most of this, but for packaging eggs I think this is a bit too much
automatic processing for my taste. I don't think such a feature belongs
into the core system, but a preprocessor (perhaps by scavenging code
from csm) or a mode for csm to emit egg files might be appropriate.


felix




reply via email to

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