[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Lexical binding and macros.
From: |
David Kastrup |
Subject: |
Re: Lexical binding and macros. |
Date: |
Wed, 15 Dec 2010 17:16:40 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> Do they still leak memory? From http://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.
Or do I misunderstand something here?
--
David Kastrup
- 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 <=
- Re: Lexical binding and macros., Pascal J. Bourguignon, 2010/12/15
- Re: Lexical binding and macros., Elena, 2010/12/15
- Re: Lexical binding and macros., Stefan Monnier, 2010/12/16