[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Lexical binding and macros.
From: |
Elena |
Subject: |
Re: Lexical binding and macros. |
Date: |
Wed, 15 Dec 2010 09:54:49 -0800 (PST) |
User-agent: |
G2/1.0 |
On Dec 15, 5:16 pm, David Kastrup <d...@gnu.org> wrote:
> Stefan Monnier <monn...@iro.umontreal.ca> writes:
> >> Do they still leak memory? Fromhttp://c2.com/cgi/wiki?EmacsLisp:
>
> >> "Note that variables bound with lexical-let are never released, even
> >> if they are never used. Try
>
> >> (loop for i from 1 to 100000 collect (lexical-let ((x i)) '()))
>
> >> and watch it eat memory. So making infinity (ZeroOneInfinity) lexical
> >> variables is out of the question except for very small values of
> >> infinity."
>
> > Additionally to what Pascal already explained, I'll add that,
> > lexical-let, like `loop' are relatively heavy macros, so you definitely
> > don't want to run them interpreted (where the macro is re-expanded each
> > time).
>
> Why would they be reexpanded each time? They are macros. Their
> expansion is done once and merely evalled each time.
Macros expansion can change if such macros depend on some other macros
which have been redefined after last expansion.
- Lexical binding and macros., Alin Soare, 2010/12/10
- Re: Lexical binding and macros., Barry Margolin, 2010/12/12
- Re: Lexical binding and macros., LanX, 2010/12/13
- Re: Lexical binding and macros., Pascal J. Bourguignon, 2010/12/13
- Re: Lexical binding and macros., Stefan Monnier, 2010/12/15
- Re: Lexical binding and macros., Elena, 2010/12/15
- Re: Lexical binding and macros., Pascal J. Bourguignon, 2010/12/15
- Re: Lexical binding and macros., Stefan Monnier, 2010/12/15
- Re: Lexical binding and macros., David Kastrup, 2010/12/15
- Re: Lexical binding and macros., Pascal J. Bourguignon, 2010/12/15
- Re: Lexical binding and macros.,
Elena <=
- Re: Lexical binding and macros., Stefan Monnier, 2010/12/16