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

Issue: PACKAGE-CLUTTER (Version 3)



A few comments...

    Date: 5 Oct 88 14:08 PDT
    From: masinter.pa@Xerox.COM

    ...
    Issue:        PACKAGE-CLUTTER
    ...
    Proposal (PACKAGE-CLUTTER:REDUCE):
    ...
      That is, a program is valid Common Lisp if it assumes that
      this is true; for example, FBOUNDP will be false for all
      external symbols of the LISP package except those documented
      to be functions or macros; BOUNDP will be false for all
      those except those documented to be functions or macros,
Don't you mean "variables"?

    ...
      Eliminate the requirement that the initial Common Lisp system
      have a package named "SYSTEM". Specify that implementations may
      have several other packages available.

I'm not sure I agree with doing this. The purpose of "SYSTEM" is not so
users can rely on it, but rather so they'll know what -not- to use.
Since some systems have other packages locked up as well, maybe that's
a weak argument. Maybe your package registry is the only way to go...

      Clarify that the "USER" package may have additional symbols interned
      within it and that it may :USE other implementation-specific packages.

Why not say "USER" is empty but uses other packages, including
implementation-specific ones? I don't see any reason why that couldn't
be trivially made to be true.
 
     Examples:
     ...
      #2: Since it is not defined as a variable, type, or function, however, 
          it may not be bound, defined as a type, or defined as a function,
          macro or special form.

"may not be initially bound, ..." would make this consistent with your
desire not to trample on LISP-SYMBOL-REDEFINITION.