[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: DEFPACKAGE (Version 7)
- To: CL-CLEANUP@sail.stanford.edu
- Subject: Issue: DEFPACKAGE (Version 7)
- From: Barry Margolin <barmar@Think.COM>
- Date: Tue, 6 Dec 88 10:58 EST
- In-reply-to: <881205-163943-4628@Xerox>
Date: 5 Dec 88 16:39 PST
From: cl-cleanup@sail.stanford.edu
If the specified name already refers to an existing package, then the
name-to-package mapping for that name is not changed. At most, the
existing package will be modified to reflect the new definition; it is
undefined what happens if the new definition is at variance with the
current state of that package.
What does "at variance" mean in this context? Is the following
undefined?
(progn
(defpackage my-package
(:use lisp))
(defpackage my-package
(:use lisp)
(:import-from my-other-package another-symbol)))
Is the second definition (which specifies an imported symbol that is not
accessible in the package at the time) at variance with the state of the
package?
My first reaction is that the only thing that should be undefined is if
the new definition specifies a different :USE list. The rest of the
possible conflicts could be handled using the normal error handling of
the package modification functions.
barmar