lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

On Sat, Jan 9, 2010 at 02:59, Alexander Gladysh <> wrote:
>>> Lua 5.2.0 (work1) is now available at

>> <...>

>>> All feedback welcome. Thanks.

>> Some random nitpicks:


And a bit more:

13. Changelists do not mention new useful lua_Debug fields.	

14. LUA_HOOKTAILRET vs. LUA_HOOKTAILCALL change is not mentioned in lists.

15. New documented API functions are not listed:

-- lua_version
-- luaL_checkversion
-- lua_upvalueid
-- luaL_testudata
-- luaL_traceback (really useful, thanks!)

BTW, how it is possible (within Lua defined by the manual) to get
different results for lua_version called with a state and with NULL? I
think I understand why luaL_checkversion is there, but lua_version
existence suggests that version mismatch may be legal. Is it so?

16. collectgarbage API changes not listed.

17. Documented behaviour of ipairs() is changed from "iterates until
*first nil*" to "traverses table length elements as defined by length

1) I welcome this change (even if it is documentation-only), as it
makes documented behaviour more consistent.
2) But, is *actual* behaviour changed? I failed to find such change in a source.
3) Regardless, I think, this is a serious change, which should be
mentioned in a changelists. I've had code which relied on previous
behaviour (thrown it away and written better one with numeric for, but
anyway :-) ).

18. Cool addition of negative offset support in select() is not listed.

19. BTW, since some of functions are moved from the implementation to
the official API (like traceback), could luaB_tostring be made
official as well (as luaL_tostring, for example)? It is the other
function I always copy-paste from Lua sources in my project... So
useful when implementing own print()...

20. Why package.config is a sequence of lines? It looks really
weird... Why not a table? It is also not in changelists.

21. Manual misleadingly states that LUA_GLOBALSINDEX was "deprecated".
It was totally removed instead (which looks like a good thing). I
believe that, in a spirit of the Manual, deprecation means that a
feature could be "reenabled" for backwards compatibility.

22. Frontier pattern was documented (hurray!), but that is not listed
as a change.

23. New table.pack is cool and useful, but not listed as well.

24. There is a typo in math.log docs (note $e$):

     The default for base is $e$ (so that the function returns the
natural logarithm of x).

25. It is not listed that file:close() returns process exit code if
file was created with io.popen(). That is cool and useful, but I think
that, in this case, the result file:close() result should be
documented for other files as well.

26. New os.exit() "close the state" fiag is not listed. Also its
default value is not specified.


P.S. Just in case: read "not listed" as not included in changelists.