Robert Goldman writes: > On 10/16/16 Oct 16 -1:31 AM, Mark Evenson wrote: >> >> >> On 2016/9/11 17:09, Faré wrote: >>> 1- While the trivial convenience function bundle-system was removed, >>> the underlying functionality still exists. The function was ill-named >>> legacy of dubious value. Do ABCL users actually use this function as >>> such? >> >> [Sorry for the late reply] >> >> As far as I know, no one actively uses BUNDLE-SYSTEM for ABCL, instead >> using the [ASDF-JAR ABCL contrib][1], which allows a system to >> (optionally recursively) package all dependencies of an ASDF system into >> a single binary artifact (a jar file containing all the code). >> >> If I understand things conceptually correctly, if their were a stable >> BUNDLE-SYSTEM, we would move the code for ASDF-JAR to use those interfaces. >> >> [1]: http://abcl.org/trac/browser/trunk/abcl/contrib/asdf-jar >> > > So BUNDLE-SYSTEM has been restored, but the comment about its > deprecation suggests that we should revisit its arglist to make it > useful, if we are not going to remove it. > > TBH, I don't understand what bundle-system is supposed to do, versus, > for example LOAD-SYSTEM. There seem to be so many different ways to > bundle and kinds of bundle that this function seems too ambiguous. > > The function is not documented, and reading the code doesn't help me (as > someone who doesn't routinely use bundle ops): it defers to > DELIVER-ASD-OP, but that operation is documented as: > > "produce an asd file for delivering the system as a single fasl" > > which suggests that it makes a .asd file, and doesn't bundle anything at > all. > > So.... help?
Afaik bundle-system creates one fasl for a whole system (if monolithic - for a system and its dependencies). It may be loaded afterwards with simple load. What it lacks is a `:move-here' key parameter or a similar mechanism. I wouldn't advise to use it, because of an arbitrary decision by Fare to break the API contract (by pushing for removal of `make-build' and `bundle-system' and promoting `program-op' and `deliver-asd-op') - you'll have your api broken with the next or one after next ASDF release. Best regards, Daniel -- Daniel Kochmański ;; aka jackdaniel | Przemyśl, Poland TurtleWare - Daniel Kochmański | www.turtleware.eu "Be the change that you wish to see in the world." - Mahatma Gandhi