So now... while I have deep admiration for the package synthesis code shown in asdf.lisp, for curiosity, why? What is the problem you had with just using CL:DEFPACKAGE?
- DM On Feb 26, 2010, at 11:21 AM, Faré wrote: > David, thanks a lot for your help and your patience! > > That was a bug I just introduced in ASDF: > I forgot to put an explicit :use in my (make-package ...), > naively thinking it would lead to an empty use-list as in SBCL, but > the CLHS says: > http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/Body/fun_make-package.html > use---a list of package designators. The default is implementation-defined. > and in Lispworks, the default legitimately is > COMMON-LISP HARLEQUIN-COMMON-LISP LISPWORKS. > > It should be fixed in 1.627. Can you give it a try? > > My sincere apologies for the inconvenience. > > [ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] > Atheism is a non-prophet organization. > > > > > On 26 February 2010 12:17, David McClain <[email protected]> > wrote: >> >> CL-USER 14 > (package-use-list (find-package :asdf)) >> (#<The ASDF-UTILITIES package, 0/64 internal, 20/64 external> >> #<The COMMON-LISP package, 2/4 internal, 978/1024 external> >> #<The HARLEQUIN-COMMON-LISP package, 0/4 internal, 266/512 external> >> #<The LISPWORKS package, 65/128 internal, 225/256 external>) >> >> CL-USER 15 > (package-use-list (find-package :asdf-utilities)) >> (#<The COMMON-LISP package, 2/4 internal, 978/1024 external> >> #<The HARLEQUIN-COMMON-LISP package, 0/4 internal, 266/512 external> >> #<The LISPWORKS package, 65/128 internal, 225/256 external>) >> >> >> On Feb 26, 2010, at 10:09 AM, james anderson wrote: >> >>> good evening; >>> >>> On 2010-02-26, at 17:46 , David McClain wrote: >>> >>>> Hi Guys, >>>> >>>> I think I'm beginning to glean your sense of confusion here. Let me >>>> just have you try loading ASDF.lisp in a freshly booted LW6 image >>>> and see for yourselves. >>> >>> send me one, and i will. >>> >>>> >>>> The ASDF.lisp that I am using was take off the web last night, >>>> >>>> ;;; -- LICENSE START >>>> ;;; (This is the MIT / X Consortium license as taken from >>>> ;;; http://www.opensource.org/licenses/mit-license.html on or about >>>> ;;; Monday; July 13, 2009) >>>> >>>> >>>> For APPENDF and GET-ENV, if I don't conditionalize to *not* export >>>> those symbols from your list of exports, then I get the error message: >>>> >>>> "Redefining xxx visible from Lispworks" >>>> >>>> The same message appears once APPENDF and GET-ENV have been dealt >>>> with, regarding LOAD-SYSTEM, COMPILE-SYSTEM, and DEFSYSTEM. In >>>> those cases, however, you really want your own definitions to be in >>>> effect, and not just inherit behavior that already exists from >>>> Lispworks. >>>> >>>> What can I say here? The LW6 system behaves the way it does, right >>>> or wrong, and my changes seemed to be the least needed to get >>>> things rolling again. >>> >>> this approach is suspect. >>> it may be, that it succeeds sufficiently to get you past the >>> stumbling point, but it should not be committed to a release, as it >>> is a symptom of some other problem which would remain unresolved and >>> which could well reappear in variations. >>> >>> given just the information in the asdf definitions, the suspicion >>> arises, that either the lispworks release, lispworks site >>> installation, or the individual runtime has arranged package and >>> symbol visibility such that symbols from some lispworks extension >>> package are visible through the common-lisp package, as that is the >>> only package from which :asdf-extensions can inherit symbols. the >>> first two would surprise me, but without a runtime one cannot say. >>> >>> what do >>> (package-use-list :asdf-utilities) >>> (symbol-package (find-symbol (string :appendf) :asdf-utilities)) >>> yield? >>> without the patches. >>> >>> in general, such a problem is to be resolved at the point which sets >>> the stage for the conflict, not in the asdf extension package >>> definition. >>> a more specific answer requires more information about the state of >>> the runtime at the point of the redefinition. >>> >>>> >>>> - DM >>>> >>>> On Feb 26, 2010, at 08:17 AM, Robert Goldman wrote: >>>> >>>>> On 2/26/10 Feb 26 -9:00 AM, David McClain wrote: >>>>>> No, I take a stock LW6 system and want to load up the ASDF >>>>>> package as soon as possible, so that I can then use ASDF to load >>>>>> in systems. When I take a look at the PACKAGE-USE-LIST of CL- >>>>>> USER, it shows COMMON-LISP, HARLEQUIN-COMMON-LISP, and LISPWORKS. >>>>>> >>>>>> Have a look at the very front of the asdf.lisp file --- it places >>>>>> itself into package :CL-USER. So we are screwed up from the get go. >>>>>> >>>>>> All I did was conditionalilze exports of two symbols that were >>>>>> already exported from another package and which performed >>>>>> identical functionality, and then I added a section to the rather >>>>>> elaborate package construction kit for ASDF to permit the >>>>>> declaration of some shadowed symbols. Simple. Effective. It works. >>>>> >>>>> Faré's right. There's something mysterious here. We are only >>>>> momentarily in CL-USER, and only while we construct (or modify) >>>>> the ASDF >>>>> package. AFAICT the ASDF package modification/creation code only >>>>> manipulates uninterned symbols (if it doesn't, that's a bug), so >>>>> there's >>>>> no way it should be messing up the CL-USER package. >>>>> >>>>> Will you please clarify? >>>>> >>>>> thanks, >>>>> r >>>>> >>>>>> >>>>>> - DM >>>>>> >>>>>> On Feb 26, 2010, at 07:31 AM, Faré wrote: >>>>>> >>>>>>> I don't understand. Do you mean that there is a problem when you >>>>>>> (load >>>>>>> "asdf") itself, or are you trying to (use-package :asdf) from cl- >>>>>>> user? >>>>>>> The latter is probably a bad idea, and wasn't supported so far >>>>>>> (so far >>>>>>> I know). >>>>>>> >>>>>>> [ François-René ÐVB Rideau | Reflection&Cybernethics | http:// >>>>>>> fare.tunes.org ] >>>>>>> Can anyone please squash this butterfly in Tokyo? I'm sick with >>>>>>> its flapping >>>>>>> wings changing the outcome of my life. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> 2010/2/26 David McClain <[email protected]>: >>>>>>>> ... rather, in package :CL-USER, not :LW-USER. But apparently, >>>>>>>> LISPWORKS is automatically being used in CL-USER... >>>>>>>> >>>>>>>> - DM >>>>>>>> >>>>>>>> On Feb 26, 2010, at 01:13 AM, Chun Tian (binghe) wrote: >>>>>>>> >>>>>>>>> Hi, David >>>>>>>>> >>>>>>>>> I don't think it's necessary to make ASDF and LISPWORKS two >>>>>>>>> packages live together. What you met can only happen when you >>>>>>>>> try to defined a package which use above two packages at the >>>>>>>>> same time: >>>>>>>>> >>>>>>>>> (defpackage xxx >>>>>>>>> (:use :cl :asdf :lispworks)) >>>>>>>>> >>>>>>>>> I don't think you have any good reason to use such a package. >>>>>>>>> >>>>>>>>> Regards, >>>>>>>>> >>>>>>>>> Chun Tian (binghe) >>>>>>>>> >>>>>>>>> 在 2010-2-26,15:44, David McClain 写道: >>>>>>>>> >>>>>>>>>> Hi, >>>>>>>>>> >>>>>>>>>> I just installed the latest available source for ASDF and had >>>>>>>>>> to make a few minor changes to the way the ASDF Package was >>>>>>>>>> being defined, for compatibility with Lispworks 6.0: (changes >>>>>>>>>> highlighted in red -- if you can see them) >>>>>>>>>> >>>>>>>>>> ... >>>>>>>>>> >>>>>>>>>> (ensure-shadow (package symbols) >>>>>>>>>> (shadow symbols package)) >>>>>>>>>> >>>>>>>>>> (ensure-package (name &key nicknames use export >>>>>>>>>> unintern shadow) >>>>>>>>>> (let* ((p (ensure-exists name nicknames))) >>>>>>>>>> (ensure-use p use) >>>>>>>>>> (ensure-unintern p unintern) >>>>>>>>>> >>>>>>>>>> (ensure-shadow p shadow) >>>>>>>>>> >>>>>>>>>> (ensure-export p export) >>>>>>>>>> p))) >>>>>>>>>> (ensure-package >>>>>>>>>> ':asdf-utilities >>>>>>>>>> :nicknames '(#:asdf-extensions) >>>>>>>>>> :use '(#:common-lisp) >>>>>>>>>> :export >>>>>>>>>> '(#:absolute-pathname-p >>>>>>>>>> #:aif >>>>>>>>>> >>>>>>>>>> #-:LISPWORKS #:appendf >>>>>>>>>> >>>>>>>>>> #:asdf-message >>>>>>>>>> #:coerce-name >>>>>>>>>> #:directory-pathname-p >>>>>>>>>> #:ends-with >>>>>>>>>> #:ensure-directory-pathname >>>>>>>>>> >>>>>>>>>> #-:LISPWORKS #:getenv >>>>>>>>>> >>>>>>>>>> #:get-uid >>>>>>>>>> #:length=n-p >>>>>>>>>> #:make-collector >>>>>>>>>> #:pathname-directory-pathname >>>>>>>>>> #:pathname-sans-name+type ;; deprecated. Use pathname- >>>>>>>>>> directory-pathname >>>>>>>>>> #:read-file-forms >>>>>>>>>> #:remove-keys >>>>>>>>>> #:remove-keyword >>>>>>>>>> #:resolve-symlinks >>>>>>>>>> #:split >>>>>>>>>> #:component-name-to-pathname-components >>>>>>>>>> #:system-registered-p >>>>>>>>>> #:truenamize)) >>>>>>>>>> (ensure-package >>>>>>>>>> ':asdf >>>>>>>>>> :use '(:common-lisp :asdf-utilities) >>>>>>>>>> :unintern '(#:*asdf-revision*) >>>>>>>>>> >>>>>>>>>> :shadow #+:LISPWORKS '(#:load-system >>>>>>>>>> #:compile-system >>>>>>>>>> #:defsystem) >>>>>>>>>> #-:LISPWORKS '() >>>>>>>>>> >>>>>>>>>> :export >>>>>>>>>> '(#:defsystem #:oos #:operate #:find-system #:run-shell- >>>>>>>>>> command >>>>>>>>>> #:system-definition-pathname #:find-component ; >>>>>>>>>> miscellaneous >>>>>>>>>> #:compile-system #:load-system #:test-system >>>>>>>>>> #:compile-op #:load-op #:load-source-op >>>>>>> >>>>>> >>>>>> Dr. David McClain >>>>>> [email protected] >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> asdf-devel mailing list >>>>>> [email protected] >>>>>> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel >>>>> >>>>> >>>>> _______________________________________________ >>>>> asdf-devel mailing list >>>>> [email protected] >>>>> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel >>>> >>>> Dr. David McClain >>>> [email protected] >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> asdf-devel mailing list >>>> [email protected] >>>> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel >>> >>> >>> _______________________________________________ >>> asdf-devel mailing list >>> [email protected] >>> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel >> >> Dr. David McClain >> [email protected] >> >> >> >> >> _______________________________________________ >> asdf-devel mailing list >> [email protected] >> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel >> > Dr. David McClain [email protected] _______________________________________________ asdf-devel mailing list [email protected] http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
