Zer0Galaxy 2 187 Опубликовано: 1 июля, 2015 Вот нашел интересное решение: condition = true a = false b = true x = (condition and {a} or {b})[1] print(x) --> false 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
swg2you Автор темы 403 Опубликовано: 23 декабря, 2015 (изменено) И еще один примерчик по теме: function ret123() return 1, 2, 3 end f, g, h, i = 0, ret123() print(f,g,h,i) --> 0 1 2 3 f, g, h, i = ret123(), 4 print(f,g,h,i) --> 1 4 nil nil Изменено 23 декабря, 2015 пользователем swg2you 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 541 Опубликовано: 23 декабря, 2015 И еще один примерчик по теме: function ret123() return 1, 2, 3 end f, g, h, i = 0, ret123() print(f,g,h,i) --> 0 1 2 3 f, g, h, i = ret123(), 4 print(f,g,h,i) --> 1 4 nil nil Читай исходники, там всё расписано. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
swg2you Автор темы 403 Опубликовано: 23 декабря, 2015 Читай исходники, там всё расписано. Орехи грецкие кушай ты. Йода много в них есть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 541 Опубликовано: 23 декабря, 2015 (изменено) Орехи грецкие кушай ты. Йода много в них есть. .Шутки шутками, а я правду говорю, вы же тут странное поведение lua обсуждаете, ответ можно найти в исходниках почему такая логика. Можно даже разработчикам сообщить, что бы пофиксили. Изменено 23 декабря, 2015 пользователем NEO 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
swg2you Автор темы 403 Опубликовано: 24 декабря, 2015 .Шутки шутками, а я правду говорю, вы же тут странное поведение lua обсуждаете, ответ можно найти в исходниках почему такая логика. Можно даже разработчикам сообщить, что бы пофиксили. Ноп. Коротко говоря, - Это не баг это фича! Это не странное, а более чем нормальное поведение ЛУА. Это поведение "оператора пакетного присваивания" освещено в официальной документации, но такое поведение "пакетного присваивания" порождает некоторые не совсем очевидные моменты, которые я, обозвав "забавными", и счел нужным запостить в отдельную тему. С образовательной целью, так сказать. Чтобы те, кто этой фичи не знает, могли поразмышлять над примерчиком, понять почему так происходить и уяснить для себя правило ЛУА, "Пакет только в конце". Ну и чтобы потрындеть над забавностями столь чудесного языка, чего уж там греха таить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Krutoy 1 169 Опубликовано: 24 декабря, 2015 Ну и чтобы потрындеть над забавностями столь чудесного языка, чего уж там греха таить. Ха, а я думал ты уже наигрался с луа и пошел дальше ПО для турбин писать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
swg2you Автор темы 403 Опубликовано: 24 декабря, 2015 Ха, а я думал ты уже наигрался с луа и пошел дальше ПО для турбин писать Правильно думал, я вообще с программированием уже давно наигрался. Сейчас играюсь проектируя лазерный гравер, уже вторую модификацию выпускаем. А в кодирование меня ЛУА потянул(-а, -о). Концепция языка, красивая, зараза, вызвала довольно длительный рецидив. Пришлось, скрипя мозгами, погружаться в ночные медитации Да и приятно было тряхнуть стариной, и с себе подобными пообщаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах