[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: How do you do this in C?
- From: Luiz Henrique de Figueiredo <lhf@...>
- Date: Tue, 12 Aug 2003 09:39:12 -0300
>The key point being that it instantiates a closure that references itself.
>
>How would I do this in C? (C is interesting because it can avoid the whole
>pack/unpack the arguments step.) Closures take values on the stack, but at
>the point when I'm creating the closure it doesn't exist as a value to put
>on the stack.
Use an upvalue instead, with value nil when the closure is created
and set it to the correct Lua value after the closure is created with
lua_setupvalue.
--lhf