kawa-commonlisp-dev
[Top][All Lists]
Advanced

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

Re: [Kawa-commonlisp-dev] [PATCH] DECLARE processing.


From: Per Bothner
Subject: Re: [Kawa-commonlisp-dev] [PATCH] DECLARE processing.
Date: Tue, 14 Aug 2012 11:30:07 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120717 Thunderbird/14.0

On 08/14/2012 05:47 AM, Charles Turner wrote:
This isn't exactly what it looks like in my repository, there it has
been modified to deal with proper CL symbols, but I intend to send a
separate series of patches dealing with symbol issues.

A minor style issue:  If local variable has a single assignment,
you should normally combine the declaration and initialization.
For example aliasedDecl - and others.

The only part of this patch I'm not confident about is the new hook I
provided in Translator, rewriteAndMakeBody. The Lisp2Compilation in my
repository copies most of the rewrite_body method from Translator,
this was the best I could think of to reduce duplication. I worry it
might be a tad niche to provide a hook for.

I think this could be avoided by making rewriteBody protected, and
changing process processDeclare to something like:

  @Override
  protected void makeBody (LList forms)
  {
     ...
     letexp = letDone(super.rewriteBbody(body));
     formStack.add(letExp);
  }

Not sure if some variant will work, but it seems it might be
worth a try.
--
        --Per Bothner
address@hidden   http://per.bothner.com/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]