[asdf-devel] upgradability with ECL

Tobias C. Rittweiler tcr at freebits.de
Wed Feb 24 12:02:04 UTC 2010


Current ECL HEAD comes with asdf version "1.604", but trying to load
upstreams asdf.lisp won't work because of

  "A package with the name ASDF-EXTENSIONS already exists."

Indeed, CLHS DEFPACKAGE says

  If one of the supplied :nicknames already refers to an existing
  package, an error of type package-error is signaled. 


In fact, using DEFPACKAGE for upgradability purposes is ill-conceived
from the beginning because of:

  If defined-package-name already refers to an existing package, the
  name-to-package mapping for that name is not changed. If the new
  definition is at variance with the current state of that package, the
  consequences are undefined; ...

And, e.g. the :EXPORT list changed in numerous points in past, and is
not excluded from changing in the future.

The portable venue would be not to use DEFPACKAGE but either to define a
DEFINE-PACKAGE macro on top of the functional layer yourself, or using
the functional layer directly. Mwahaha. Suckage. :-)


  -T.





More information about the asdf-devel mailing list