[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: PACKAGE-CLUTTER (Version 6)
- To: cl-cleanup@sail.stanford.edu
- Subject: Issue: PACKAGE-CLUTTER (Version 6)
- From: Moon@STONY-BROOK.SCRC.Symbolics.COM, KMP@STONY-BROOK.SCRC.Symbolics.COM
- Date: 5 Jan 89 23:57 PST
- Sender: masinter.pa@Xerox.COM
[lmm: I've been folding short comments into my Issue status file, but this
one is too long.]
This leaves implementations freedom to hack any properties other than
those in the LISP, KEYWORD, and USER packages. In fact, though, the
user should probably also have rights over the system in packages he
creates.
This will be an incompatible change -- possibly a major one -- for
Genera, which uses properties named by keywords and by symbols in the
LISP package. However, we think the change is worthwhile.
In general, Genera tries not to distinguish "the system" from "the user".
Anything the system is permitted to do, the user is permitted to do.
As such, we feel a little odd about placing restrictions on the system
which are not likewise placed on the user. In fact, if the system can
cause problems in this way, the user can, too. This proposal is only
heuristic. We're voting "Yes" because it's probably a change for the
better. But we won't be surprised if ultimately it is not seen to be
the right way to achieve the high-level goal.
LEXICAL, TYPE, INLINE, NOTINLINE, and FTYPE proclamations should be
explicitly ruled out (just as SPECIAL is) except that TYPE is allowed
if it's a CL variable, and FTYPE, INLINE, and NOTINLINE are allowed
if it's a CL function.
The DECLARATION proclamation probably be explicitly allowed (because
we see no reason not to permit it).