Maven and ABCL

Mark Evenson evenson at
Sat Apr 8 11:20:05 UTC 2017

On 4/8/17 01:15, Alan Ruttenberg wrote:
> Hi Robert,
> If you are familiar with the architecture, perhaps you can give me some
> hints where to intervene. The behavior I want is:
> Assume I load a system at top-level and sprinkled in it or its dependencies
> there are a number of :mvn-modules as described earlier.
> During preparation, the dependencies, exclusions, and managed-dependencies
> are collected at the level of the top-level system.
> Then, before any lisp or other files are loaded a single call is made to
> compute the combined maven dependencies and they are resolved and added to
> the classpath.
> Finally the rest of the load goes as it usually does, although the
> :mvn-module components compile and loads are no-ops since their work has
> already been done up-front.

The architecture of ASDF can be likened to that of the [ship of
Theseus][1], being replaced as it sails the seas of compatibility;
Robert is just the latest in the line of captains who have attempted to
navigate its passage.


It was suggested at [ELS 2017][2], that while ASDF has a firm
abstraction at the upper level in the CLOS abstraction and a recently
concertized cross-implementation compatibility layer in UIOP, it may be
said to be missing large swathes of reusable abstraction to bridge the two.

[2]:  urn:"Loading Multiple Versions of an ASDF System in the Same Lisp
Image"/"10th European Lisp Symposium Session: Session I:
Tools"/"Vsevolod Domkin".

I think the first step forward will be recognizing that the current
[ABCL-ASDF:RESOLVE][3] machinery works on an "internal state", opaque to
ASDF for resolution.  What is needed is to somehow explicitly return all
the dependencies in a format that the properly overloaded ASDF CLOS
machinery can understand.


"A screaming comes across the sky.  It has happened before, but there
is nothing to compare to it now."

More information about the armedbear-devel mailing list