[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: MAKE-PACKAGE-USE-DEFAULT (version 1)
- To: JonL@Lucid.COM
- Subject: Issue: MAKE-PACKAGE-USE-DEFAULT (version 1)
- From: Kent M Pitman <KMP@STONY-BROOK.SCRC.Symbolics.COM>
- Date: Sat, 8 Oct 88 23:04 EDT
- Cc: CL-Cleanup@SAIL.Stanford.EDU
- In-reply-to: <8810070517.AA07620@bhopal>
I can't approve of this proposal.
Many portable programs will be forced to put :USE "LISP" in where they
do not currently specify. There is no ambiguity in those programs --
they are using a well-advertised default -- so it is not proper to make
claims like "if they care, they should be specific".
Similar arguments could be made for the OPEN keywords. Perhaps all keys
should default in an implementation-dependent fashion and users should be
highly-specific about their intent.
I think it is appropriate for Common Lisp to specify useful portable defaults.
I think it is inappropriate for Common Lisp to be encouraging vendor
divergence. Common Lisp tolerates such divergence of necessity, but it
should not be a goal because it does not serve the user community.
Finally, under current practice, you ignored my remarks about Cloe so I'll
repeat them. Cloe shadows MAKE-PACKAGE, IN-PACKAGE, etc. in the default
package so that it offers the functionality you desire in a way that is
not incompatible to Lisp. I would recommend that you do the same.
LISP:MAKE-PACKAGE name &KEY nicknames (USE "LISP")
CLOE:MAKE-PACKAGE name &KEY nicknames (USE "CLOE")
Once you've chosen a package to work from, all calls to an unqualified
MAKE-PACKAGE do the thing that is natural for that initial package.