[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
- Subject: Re: issue EVAL-WHEN-NON-TOP-LEVEL, version 6
- From: masinter.pa@Xerox.COM
- Date: 16 Mar 89 07:52 PST
- In-reply-to: sandra%defun@cs.utah.edu (Sandra J Loosemore)'s message of Mon, 13 Mar 89 16:42:54 -0700
I like the intent of EVAL-WHEN-NON-TOP-LEVEL:GENERALIZE-EVAL but have some
wording quibbles.
If "the file compiler" means COMPILE-FILE, why not say COMPILE-FILE? I'm
sure you don't mean to refer to, say, a C compiler written in Common Lisp,
even though it might be a file compiler.
Instead of "a top-level form in the file compiler", say "a top-level form
processed by COMPILE-FILE." In any case, you don't mean to talk about one
of the expressions that occur in the source code that defines COMPILE-FILE.
For an EVAL-WHEN form that is not a top-level form in the file compiler
(that is, one of: in the interpreter; in COMPILE; or in the file
compiler but not at top-level) ...
The "(that is, ..." clauses are neither exhaustive or appropriate. I think
you really mean "all other cases". I don't think you can have an EVAL-WHEN
that is 'at top level' to COMPILE since COMPILE takes functions or lambda
expressions. It's possible to think of a version of COMPILE-FILE that
produces things that are then 'interpreted' to some extent (byte-code
interpreter, for example).
Try,
For an EVAL-WHEN that is not a top-level form processed by
COMPILE-FILE,
-- - - - - - - - - -
I'm not too opposed to :EXECUTE, :COMPILE and :LOAD as keywords, but don't
see the need for the extra verbosity of :COMPILE-TOPLEVEL or
:LOAD-TOPLEVEL. There are other ways to emphasize the "toplevel" aspect;
e.g., put ***WARNING*** in your reference manual.