guile-devel
[Top][All Lists]
Advanced

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

Re: Avoiding variable clashes


From: Andy Wingo
Subject: Re: Avoiding variable clashes
Date: Wed, 13 Apr 2011 16:19:29 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

On Wed 13 Apr 2011 14:57, Hans Aberg <address@hidden> writes:

> What method is Guile using to avoid substitution variable clashes (de
> Bruijn numbers, combinators, etc.)?

Each lexical variable is given a fresh name (a gensym) when it is
introduced.  The expander keeps an environment as to what name maps to
what gensym, and residualizes the gensym in the lexical reference or
assignment.

See "The Scheme Compiler" in the manual, for more.

Andy
-- 
http://wingolog.org/



reply via email to

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