Lua5.2からLua5.3への主な変更点†
リファレンス†
目玉となる変更点†
bit32†
Lua 5.2にて追加された bit32ライブラリは廃止された。Lua 5.3ではビット演算子が採用された。
整数型の導入†
これまでLuaの数値はデフォルトだと全て「double型」でしたが、「int型」と「double型」に分かれました。
小数点が付いたものはdouble型、小数点が付かないものはint型となった。
これに伴い、浮動小数点数を文字列に変換する際には、整数で割り切れるものでも .0が追加されるようになった。(例えば、2.0など)
通常Luaでやってる類の計算で、今回の変更の影響を受けるものは少ないと思われる。
ガベージコレクタ†
- ガベージコレクタの世代別モード
Lua 5.2にて実験的に導入された「ガベージコレクタの世代別モード」は結局削除された。
- collectgarbage("count")
collectgarbage("count")の戻り値が2つあったが、1つになった。
(最初の戻り値の小数部から2番目の戻り値を計算できます。)
ipairs†
- __ipairsのメタメソッドは無くなり、__pairsに統合された
数学ライブラリ†
数学ライブラリのうち、atan2、cosh、sinh、tanh、pow、frexp、ldexp、が削除された。
math.pow(x,y) は x^y で置き換えることが出来る。
Lua Compat 53†
lua-compat-53
によって、このあたりを吸収する方法を得ることができます。