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

Re: issue EVAL-WHEN-NON-TOP-LEVEL, version 6



Ack.  What happened to any version that aims to "fix nesting"?
That problem has to be the main reason I've ever been
interested in this issue.

Suppose programmer A defines a macro DEFINE-FROB that expands into

(EVAL-WHEN (COMPILE LOAD EVAL) . . . )

Now suppose that for some reason programmer B, a user of FROBs,
desires to only define a frob at load time, and writes:

(EVAL-WHEN (LOAD)
  (DEFINE-FROB . . . ))

As defined in CLtL and in EVAL-WHEN-NON-TOP-LEVEL:GENERALIZE-EVAL,
the frob gets defined at compile-time (too), even though programmer
B specified only LOAD-time.

Is it unreasonable to try to delay such a thing until load time?
Am I wrong about what would happen in this scenario?
What *is* the story here?
				-Cris