On Sun, Mar 9, 2014 at 12:46 PM, Robert Goldman <rpgold...@sift.net> wrote: > Wouldn't it be sufficient to: > > 1. Weakly depend upon the cl-unicode system. This will load the > cl-unicode system if available, but ignore it (instead of failing the > load) if cl-unicode is not present. > That would work. I also would have liked to deprecate weakly-depends-on, for the same reasons, but didn't try hard. Not my problem anymore.
> 2. Detect the successful load or failure downstream in a file-component > that adds the degree symbol. Something like > > (:component "turn-on-unicode-symbols" :if-feature :cl-unicode) > Won't work, because the plan is computed before the system is loaded. > I note that this conflicts with Faré's advice in the current manual, > which is to use asdf-system-connections *in place of* weakly-depends-on. > I am removing that advice, given that A-S-C is deprecated. > I would deprecate both. > Question for Faré: you say that weakly-depends-on is not deterministic, > and that it's effects depend on load order. Off-hand, I don't see this. > weakly-depends-on should be deterministic in a given installation, so there's that. Load order effects happen only if some crazy extension makes new systems appear. However, weakly-depends-on isn't deterministic from one machine to the next, which makes reproducing bugs harder. I never liked it. I much prefer explicit connection systems A+B.asd > If I have a system A that weakly-depends-on B, and then a component, as > above, that uses if-feature, where does the order-dependence arise? > Indeed, w-d-o seems more deterministic than A-S-C, because the latter > tries to load if B is already loaded -- and NOT try to load B if it's > not there. That means that A-S-C is more procedural (depending on > global state) and less declarative than W-D-O, not less. > > Or I'm missing something about the semantics. > if-feature shouldn't be used for features that are not present at the very beginning of the build. Otherwise w-d-o is cleaner than a-s-c, but still less nice than I like it. —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org The War on Terrorism is missing the point: what we need is a War on War! — Kennita Watson