Snusmumriken
Это довольно грубый хак, но никто не мешает его использовать, без каких либо модификаций и продолжать пользоваться реквайрами даже без файловой системы.
Иван
Даже что-то подобное подошло бы: cat mylib.lua > script.out cat script.lua >> script.out
mva
или я чего-то в этой жизни не понимаю, или я хз
mva
https://github.com/pavouk/lgi/ кажется, связывается с какой-то своей вселенной
mva
$ gio mime text/plain | head -n1 Приложение по умолчанию для «text/plain»: org.kde.kwrite.desktop
mva
> return Gio.AppInfo.get_executable(Gio.AppInfo.get_default_for_type("text/plain")) [1] FBReader
mva
как?
Luсky
Даже что-то подобное подошло бы: cat mylib.lua > script.out cat script.lua >> script.out
Давно бы уже пиксиланг затащили в свою шарманку и горя не знали.
Иван
Я так и не понял - а чем love.update(dt) отличается от love.draw()? Первый вызывается с фиксированной частотой, а другой тупо каждый кадр?
Daniil
Я так и не понял - а чем love.update(dt) отличается от love.draw()? Первый вызывается с фиксированной частотой, а другой тупо каждый кадр?
Оба каждый кадр, но в update можно знать, сколько времени прошло с предыдущего (чтобы внутриигровые скорости правильно считать с этим коэффициентом dt).
Daniil
Чёт нелепо как-то. Можно же и в и love.draw получить dt
Это разные места в главном игровом цикле. Ты сначала считаешь состояния всех объектов, а потом разом выводишь. Иначе ты выведешь один объект, а при выводе последнего окажется, что он влияет на первый, а ты его уже вывел.
Daniil
Для разруливания такого и разносят update и draw.
Daniil
Плюс физический движок обычно имеет фиксированную dt для расчетов. Этот апдейт может вызываться реже. Тут я не знаю конкретно про love.
Daniil
Да, ты формируешь так называемый batch, а потом это всё отправляется на видяху.
Иван
Я вот просто щас думаю, сделать свой love, или как-нибудь портировать его на embedded устройство
Luсky
есть ловка для дос
Luсky
GitHub - rxi/lovedos: A framework for making 2D DOS games in Lua https://github.com/rxi/lovedos
Иван
GitHub - rxi/lovedos: A framework for making 2D DOS games in Lua https://github.com/rxi/lovedos
(щас бы билд систему на голом питоне...)
Luсky
Билд систему можно хоть на голом луажите
Wsevolod
почему луа не понимает воткнутый посередине функции return?
Highly Likely
Покажи код
Лучше ты :)
Wsevolod
Лучше ты :)
function foo() return 42 local a = 42 end
Luсky
И как ты её телебонькаешь?
Highly Likely
function foo() return 42 local a = 42 end
И что именно не работает?
Wsevolod
Highly Likely
Ну syntax error как бы
Ну очевидно :)
Wsevolod
Ну очевидно :)
Что очевидно?
Highly Likely
У тебя конструкция после ретурна, которая никогда не выполнится
Highly Likely
Она невалидна
Wsevolod
У тебя конструкция после ретурна, которая никогда не выполнится
Это семантическая ошибка, а не синтаксическая, так, например, в сишке
Wsevolod
И?
https://t.me/ProLua/85494
Highly Likely
Я могу сказать что это и синтаксическая в том числе
Highly Likely
https://t.me/ProLua/85494
Он воспринимает. И даже подсвечивает тебе ошибку синтаксическую. Ты никаким механизмом ретурн не перепрыгнешь без гоуту.
Luсky
Ответ тот же - криво воткнуто.
Highly Likely
Тогда почему function foo() do return end local a = 42 end не "подсвечивает"?
Потому что ретурн внутри ду-энд блока и возвращает он из него, а не их функции (емнип)
Highly Likely
Или, если я забыл, второй вариант — это другой скоуп
Highly Likely
И на другом скоупе проверка не включается
Highly Likely
Ты пытаешься кому-то доказать что ты прав и это баг луа или что?
Highly Likely
Тебе объяснили, в чем проблема. Это вполне ожидаемое поведение
Highly Likely
Дальше диалог для чего?
Wsevolod
Интересно другое: это специальный чек во время парсинга — есть ли что-то после return, или особенность грамматики луа
Highly Likely
Highly Likely
Но да, я думаю что это еррор на уровне фронтенда, на этапе синтаксического анализа
Daniil
Кстати, раздражает частенько. Какой-нибудь дебажный return уже не воткнуть - извольте закомментить код. Бе.
Daniil
Так втыкай ерроры :)
В смысле? Мне прост надо чтобы часть функции выполнилась, а часть скипнулась. По-началу пытался так делать автоматом)
Daniil
Тогда вот так https://t.me/ProLua/85499
Интересно, ага) Может и воспользуюсь при случае))
Wsevolod
Ага, вот тут в stat нету return, он только в laststat http://parrot.github.io/parrot-docs0/0.4.7/html/languages/lua/doc/lua51.bnf.html
Alexey
https://www.lua.org/manual/5.4/manual.html#3.3.4 The return statement can only be written as the last statement of a block. Как бы это часть язака котрая явно описана.
Highly Likely
Понятно, но не написана причина так сделать
А какой смысл втыкать его в середину?
Alexey
do return end для дебага достаточно. а в финальной версии такого быть не должно вообще
Highly Likely
This^
mva
мне интересно, почему do return end вообще работает
mva
по логике, return должен выходить только из do блока
Alexey
ограничение на return вроде для упрощения реализации парсера делали.
Alexey
по логике, return должен выходить только из do блока
The return statement is used to return values from a function or a chunk (which is handled as an anonymous function Опять таки из мануала
mva
ы?
Alexey
do ... end - не chunk