Hi all,
(I'm not sure whether or not this is the right place for questions
about the grid system in gsd; apologies if I should be posting
elsewhere.)
Has anyone else found a reliable way to force the grid extension to
iterate to load?
I have a project that uses some of the various iterate extensions.
Naturally its asdf system won't compile properly if the iterate
extension is not loaded. There doesn't seem to be any way to ensure
that the grid extension is loaded aside from making sure that the
asdf-system-connections system has been loaded before I try to load my
system. That means I need this ugly piece of work in my asd file,
before my system definition:
;; We want to use the iterate extension for grid data
(eval-when (:compile-toplevel :load-toplevel :execute)
(require '#:asdf-system-connections))
Including :asdf-system-connections in the dependencies of my system is
not sufficient, either because I can't control the order in which
systems load, or for some deeper reason (I suspect that in fact
asdf-system-connections needs to be fully loaded before asdf even
starts thinking about my system).
Would it be possible to include an asdf system in the grid project
like the following?
(asdf:defsystem grid-iterate-extension
:depends-on (#:grid #:iterate #:alexandria)
:components ((:module
"grid-iterate"
:pathname ""
:components ((:file "iterate")))))
Then I could just include grid-iterate-extension in the dependencies
for my asdf system and not have to go through any contortions to get
asdf-system-connections loaded first. It has to go in its own file to
be reliably found by asdf, which I recognize adds clutter, but I think
it's wrong to have a dependency on asdf-system-connections that I
can't express in my system definition.
Thanks!
James