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

Re: Issue COMPILER-LET-CONFUSION, version 1



    Date: Wed, 5 Oct 88 16:02:10 MDT
    From: sandra%defun@cs.utah.edu (Sandra J Loosemore)

    ...
    > > Proposal COMPILER-LET-CONFUSION:REQUIRE-PREPASS:
    > 
    > I'm leaning in favor of a variation of this approach that would say that
    > if an implementation does not normally do a preprocessing code walk, then
    > the evaluator's implementation of COMPILER-LET needs to do a macro
    > expansion code walk on its body forms before evaluating them.  We
    > currently do macro expansion as needed during evaluation, yet it would be
    > a trivial change to have COMPILER-LET invoke MACROEXPAND-ALL on its body.
    > This should only be a hardship for any implementation that doesn't do a
    > pre-pass and doesn't already have a MACROEXPAND-ALL.

    I suspect that most implementations that don't do a code-walking prepass
    in the interpreter don't have anything like MACROEXPAND-ALL, either, so
    this may not really buy anything.  I suppose this could be presented as
    yet another alternative in the next iteration of the writeup on this
    issue.  Does anybody else like this idea?

If you mean REQUIRE-PREPASS -- yes, I certainly do.