Dependency issue with program-op

Faré fahree at
Sun Mar 21 21:29:53 UTC 2021

> If I add an explicit dependency on setup in the :simple ASDF system
> above like this:
> :depends-on (:net.didierverna.clon.setup :net.didierverna.clon))
> the problem goes away. This doesn't happen with the 5 other Lisp
> implementations that I've tested.
> Also, it may be worth mentioning that Clon's setup system gets a special
> treatment. It's loaded explicitly at the top of several .asd files like
> this (with the utmost disrespect for the Almighty ASDF Gods
> recommendations):
> (asdf:load-system :net.didierverna.clon.setup)
> I'm wondering if this may have something to do with the problem.
Your system definition was wrong, and you found the way to fix it.

Your manual (asdf:load-system ...) from the .asd file is equivalent to
a :defsystem-depends-on dependency. It creates a dependency at
system-definition-time, but not at runtime. Not at runtime, ergo, not
to be included in the executable.

If it defines packages that are required in the executable, it MUST be
added as a load-time dependency as well as a system-definition-time
dependency. It is a BUG in YOUR code that clon fails to depend on

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics•
Director is a misnomer. You're a hoper. You put all these people together and
you hope it all works out.  — Frank Oz, director of "Dirty Rotten Scoundrels"

More information about the ecl-devel mailing list