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

Re: Issue: EVAL-WHEN-NON-TOP-LEVEL (Version 5)

>     I wasn't intending my :EXECUTE to be different from your :EXECUTE.  I'm
>     not sure if I just used a poor choice of words to describe it or if I've
>     missed some subtlety of your proposal.
> LOAD and COMPILE have meaning only when in a non-top-level position.
> EVAL has meaning only in a top-level position.

OK, I see now that I did miss noticing the sentence in your proposal that

   The use of EVAL controls whether processing occurs for 
   non-top-level forms.

But this just makes the proposal even more incompatible that I thought
> For any given context, if LOAD is `being considered,' then COMPILE is
> `being considered' -- and vice versa.
> For any given context, if LOAD and COMPILE are `being considered' then
> EVAL is not `being considered' -- and vice versa.

I found this discussion to be incomprehensible until I did a text
substitution to replace EVAL, COMPILE, and LOAD with your alternate names
:EXECUTE, :COMPILE-TOPLEVEL, and :LOAD-TOPLEVEL.  Then it began to make
sense.  It just isn't going to work to define new meanings for old words;
if this approach is going to be taken, then new names are essential.
Also, to help make this clearer, instead of :EXECUTE, it should be
something like :EXECUTE-NON-TOP-LEVEL.

Now that I understand the proposal, I still need to think about whether I
agree with it.