[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: any plan about luajit2 support 5.2!
- From: Mark Hamburg <mark@...>
- Date: Wed, 17 Nov 2010 15:25:19 -0800
On Nov 17, 2010, at 8:23 AM, Mike Pall wrote:
> Mark Hamburg wrote:
>> I'm not wild about the N-squared time complexity, but the
>> ephemeron GC as a solution to semi-weak-table-induced collection
>> problems is pretty useful.
>
> It was already my plan to add this for the new LuaJIT GC
> (postponed to 2.1).
>
>> Getting rid of function environments (at least as mutable
>> properties of functions) ought to be an optimization
>> opportunity, but I'm not writing anything that depends on that.
>
> Nope, not really. Since function environments were rarely changed,
> they are treated as immutable. Similar things happen with upvalues,
> since LuaJIT's alias analysis is quite good. Moving the environment
> to an upvalue neither complicates things nor simplifies anything.
>
>> The messier issue for me is that working in some environments
>> where LuaJIT isn't an option -- e.g., iOS on ARM
>
> Well, don't hold your breath. But I'm sure an ARM port will
> happen.
Just the interpreter would be enough for my current uses.
>> I'm really attracted by the yieldable pcall support in 5.2.
>
> Alex already answered that -- you can have that feature right now
> on all platforms.
Yes. RVM is probably the least disruptive to the rest of the environment, but it gets harder to justify taking a big patch to Lua when 5.2 simply includes it.
Other features of 5.2 that attract me:
* Lightweight C functions and hence a truly useful replacement for the somewhat awkward lua_cpcall.
* Comparison operators do not insist on metamethod equality.
There are probably a few more, but those together with the previous list are the big ones -- i.e., the ones that address real issues I've had to work around -- that come to mind.
Mark