Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
[ANN] Lua 5.2.0 (final) now available (nabble.com)
49 points by wsxiaoys on Dec 17, 2011 | hide | past | favorite | 8 comments


In the same vein, LuaJIT2 beta 9 was released a couple days ago.


It's a bit weird that they went with goto. It is a much smaller addition than continue + labeled break + labeled continue + switch, but it's still really unusual to see in a scripting language.


So now that module(...) is deprecated does anyone know the expected standard pattern? The changes say to just build it with code (setting _ENV?) but do the devs have a "right way" to do it?


The Lua developers are generally not very fond of endorsing a single "right way" to do things. But basically, it's something like:

    -- localize all the stuff you need
    local _ENV = {}
    -- module code
    return _ENV
So really not that much code to add yourself.


An easy way is to just define your functions in a table, and at the end of the file to be required, return the table. This was the pattern used in Lua before 5.1. The source for Luacov provides a clear example:

https://github.com/keplerproject/luacov/blob/master/src/luac...


Any links to info on 5.1.4 -> 5.2 changes? I can't seem to find any.

EDIT: Found some information! http://www.corsix.org/content/look-lua-52-work3


There's some info in refman: http://www.lua.org/manual/5.2/manual.html#8

There was a more detailed summary at http://www.lua.org/work/doc/#changes but it looks like it's been taken down. There's the Google cache: http://tinyurl.com/832f273


Ah, thanks! These are much more informative.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: