Comments 6
Видимо обновляют сайт. Я думаю, завтра этот документ переедет на своё окончательное место, и я обновлю ссылку. Пока можно попробовать начать отсюда: www.lua.org/manual/5.2/. Восьмой раздел руководства: «Incompatibilities with the Previous Version»
0
Для тех, кто хочет поиграться с новой Lua, но лень ее собирать — я собрал бинарники для Windows:
rghost.ru/35123231 — win32
rghost.ru/35123391 — win64
Оба собраны Visual Studio 2010, солюшен с исходниками: rghost.ru/35123681
Я не обзавелся сайтом, так что ссылки будут действительны 30 дней.
rghost.ru/35123231 — win32
rghost.ru/35123391 — win64
Оба собраны Visual Studio 2010, солюшен с исходниками: rghost.ru/35123681
Я не обзавелся сайтом, так что ссылки будут действительны 30 дней.
+2
С точки зрения самого языка изменений немного. Пожалуй, наиболее видимое (с точки зрения программиста на Lua) отличие — теперь нет специальной переменной arg у функций с переменным числом аргументов, вместо нее нужно использовать многоточие. Также поменялась концепция «окружений» (environment) — функций setfenv/getfenv больше нет, и текущее окружение определяется специльной переменной с именем _ENV, находящейся в текущей области видимости.
С точки зрения реализации есть очень важное нововведние — функции lua_yieldk и lua_callk. Благодаря им можно передать управление из сопрограммы (coroutine) не только из кода на Lua, то и из C, с последующей возможностью продолжить сопрограмму. Это в том числе позволяет вызывает yield из метаметодов (что раньше делать было нельзя).
Кроме того, немного поменялось поведение таблиц со слабыми ключами (weak keys), но в большинстве случаев вам, скорее всего, это будет неважно.
С точки зрения реализации есть очень важное нововведние — функции lua_yieldk и lua_callk. Благодаря им можно передать управление из сопрограммы (coroutine) не только из кода на Lua, то и из C, с последующей возможностью продолжить сопрограмму. Это в том числе позволяет вызывает yield из метаметодов (что раньше делать было нельзя).
Кроме того, немного поменялось поведение таблиц со слабыми ключами (weak keys), но в большинстве случаев вам, скорее всего, это будет неважно.
0
Sign up to leave a comment.
Вышел Lua 5.2.0