chicken-users
[Top][All Lists]
Advanced

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

Re: [Chicken-users] Implementing a macroexpand-all


From: Peter Bex
Subject: Re: [Chicken-users] Implementing a macroexpand-all
Date: Sat, 12 Feb 2011 17:20:08 +0100
User-agent: Mutt/1.4.2.3i

On Sat, Feb 12, 2011 at 11:15:31AM -0500, Patrick Li wrote:
> Thanks for the help Felix!
> 
> There's one more question I stumbled upon actually. Do you know of some way
> I can tell if a symbol *actually* refers to lambda or let?
> 
> eg. after some macro expansions, a form might look like (lambda89 (x y) body
> ...)
> where lambda89 is equivalent to lambda.

After full expansion, you should get ##core#lambda, which is the "core"
lambda.

To determine whether a renamed symbol like lambda89 refers to a macro,
you need to look it up in the syntax environment you've built up till
the point where you encounter it.

Cheers,
Peter
-- 
http://sjamaan.ath.cx
--
"The process of preparing programs for a digital computer
 is especially attractive, not only because it can be economically
 and scientifically rewarding, but also because it can be an aesthetic
 experience much like composing poetry or music."
                                                        -- Donald Knuth



reply via email to

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