chicken-users
[Top][All Lists]
Advanced

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

Re: [Chicken-users] keyword args not assigned in program.


From: Alan Post
Subject: Re: [Chicken-users] keyword args not assigned in program.
Date: Sat, 20 Nov 2010 17:03:56 -0700

On Sat, Nov 20, 2010 at 06:37:59AM -0800, Alex Shinn wrote:
> On Sat, Nov 20, 2010 at 5:59 AM, Alan Post <address@hidden> wrote:
> >
> > It appears that directly evaluating the result of the compiler causes
> > #!key arguments not to be assigned, but if I save that same result
> > and read it back in, things work fine.
> 
> Seeing the compiler would help, but I'll take
> a stab and guess you're expanding  with macros.
> That means the expanded forms will be wrapped
> hygienically and not match plain symbols.
> 
> Reading and writing to a file effectively strips
> hygiene.  To do this manually at runtime, use
> `strip-syntax' on the keyword names.
> 

I was using one syntax-rule, which I replaced with the code the rule
was generating.  It did not fix the problem.  I do use letrec in the
compiler output, is that a macro expansion?

I may be using strip-syntax incorrectly.  It is the runtime of the
compiler that creates the argument list to pass to transform.  I
modified the runtime to call strip-syntax on the key names as they
are being collected into the argument list.  So to be clear, this
doesn't affect the output of the compiler, only the runtime as the
parser parses input and calls transform.

That didn't work either.  :-(

If I could wrap this example up and check in my egg, would you help
me diagnose the problem?

-Alan
-- 
.i ko djuno fi le do sevzi



reply via email to

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