[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

LISP package



I disagree rather strongly with the view that the Lisp package should be
exactly those symbols defined in the Common Lisp manual and no others.
My understanding of what these packages are for is based in part on the
Zetalisp package system, which was the starting point for the one in
Common Lisp.

The Lisp package has special status, in that it is the package that is
included by default in all others.  It wants to contain those symbols
that should be accessible to typical applications in a given system --
the default set of accessible names.

The System package is for system-interface stuff and dangerous
implementation-dependent operations that do not want to be trivially
accessible to the average application.

I agree that it would occasionally be useful to have a package that is
guaranteed not to have anything in it that is not part of the Common
Lisp standard.  We could create a new package, named "standard" or
something like that, to do this job.  Or, I suppose, we could say that
the Lisp package does this job, and create a new package named "default"
or something that contains Common Lisp plus the local extensions.  In
that case, "default" would replace "lisp" as the package used by default
when a new package is created.  That's a more incompatible change for
most implementaitons.

I certainly do not like the idea of "system" being used to hold the
local stuff, and of folding it into the default.  Then we would just
have to create another package to hold the dangerous "system" stuff like
(rewind-the-disk).

-- Scott