[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: issue EVAL-WHEN-NON-TOP-LEVEL, version 6
- To: cl-compiler@sail.stanford.edu, sandra%defun@cs.utah.edu
- Subject: Re: issue EVAL-WHEN-NON-TOP-LEVEL, version 6
- From: cperdue@Sun.COM (Cris Perdue)
- Date: Thu, 16 Mar 89 09:20:08 PST
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