On Nov 11, 2020, at 10:40, Mark Evenson <evenson@panix.com> wrote:
On Nov 11, 2020, at 03:44, Robert Munyer <2433647181@munyer.com> wrote:
[…]
It's conceivably possible that _all_ of the manipulation of *PACKAGE* that happens during COMPILE-FILE could be removed, because the user is already required to have *PACKAGE* set correctly when invoking LOAD.
I don’t think this is true: COMPILE-FILE should actually capture the current package when COMPILE-FILE is invoked, arranging to have this package present when LOAD occurs. [An example of this][1] works on SBCL/CCL but fails on ABCL even with all of your suggestions. Please correct me if you believe this isn’t the case.
Strike “arranging to have this package present when LOAD occurs” as that is certainly not true in general. It’s more that the compiler should take the current package in account when it determines what the symbols it encounters actually refer to. More precise formulations of this are welcome… -- "A screaming comes across the sky. It has happened before but there is nothing to compare to it now."