mva
goto, вот, правда, я не люблю :)
mva
хотя бы потому что не 51-compatible
Snusmumriken
хотя бы потому что не 51-compatible
Ну я злодей, да. Надо было функцию замутить, которая ретурнит полученную фигню/ошибку, и бесконечный цикл вроде такого: while true print(translate(io.read())) end Но я злодей и хотел впихнуть goto, плюс типо тупо "демонстрация тулзов", без выкладывания в общий доступ.
Snusmumriken
Кстати, маленькие чемпионы, кто напишет тулзу на луях, которая будет вычислять путь до скрипта/библиотеки, цепляющейся через require? Мне такая в своё время много нервов сэкономила, ибо штук десять разных мест в LUA_PATH/LUA_CPATH, и в некоторых местах либы с одними и теми же именами но с разными эффектами (версиями, например).
Lucky
Реал-тайм, детя, потому что я детя.
мн. ч дЕти ед.ч. дЕтя - всё логично.
Lucky
Снус - дЕтя
Artem
может кто знает, насколько сложно найти lua разработчиков среди web?
Lucky
я знаю двоих
Artem
lua + php и был готов работать с моим подходам к микросервисам
Snusmumriken
Для начала, стоит уточнить что "найти толковых луа-разработчиков" - уже довольно сложно. А "веб" - отсекает из них сразу миллиард. Я знаю товарища Leafo, он ещё lapis и moonscript написал.
Lucky
луа + ангулар2
vitaly
луа + прон
Snusmumriken
👌
Lucky
пых - тот ещё прон, ага
uhx
lua + python django
uhx
извините
Artem
луа + ангулар2
ну нужен только бэк
Snusmumriken
Зачем тебе php когда уже есть луа? Они выполняют примерно одну и ту же деятельность.
Lucky
дыа
Mikhail
я юзаю луа для бэков
Lucky
👍
Mikhail
и с лонгполлингои и с вебсокетами норм
Mikhail
Openrestишь небось?
нет. все самописное )
Artem
если только openresty тогда, просто проект уже готов на nginx/lua + php + mariadb + redis
Mikhail
но я жалею что я не сразу.. то есть я не смог в resty
Mikhail
сильно бы проще было
Artem
нет. все самописное )
у меня тоже все самописное
Snusmumriken
у меня тоже все самописное
У тебя самописный вебсервер?
Mikhail
будет время, задача и деньги я буду мигрировать потихоньку..
Snusmumriken
Вот, тогда у тебя уже nginx не-самописный : )
Artem
https://hoqu.io/
vitaly
Вот, тогда у тебя уже nginx не-самописный : )
у меня есть пример самописного на луа
Snusmumriken
ржу немогу
Даладна, у меня на работе на проде крутится несколько крошечных асинхронно-корутинных вебсерверов луёвых, моих, конечно. Основная задача примерно как у ноды (принять запрос, распарсить, прогнать через юзер-функцию, вернуть), только на луях.
vitaly
https://github.com/appwilldev/everlooping/blob/master/test_server.lua
Snusmumriken
https://github.com/appwilldev/everlooping/blob/master/test_server.lua
Совсем простой (не умеет принимать большие body): https://pastebin.com/MMCB6RJV В конце - пример юзания. Основной прекол - в неблокируемости, впрочем, на проде работает его мод (в корутины и в либы с прода).
Snusmumriken
Приём данных тут не очень оптимальный, я уже успел написать несколько более крутых вариков (( Но пару десятков тысяч запросов в секунду на luajit перемалывает (если обработка не очень сложная).
vvzvlad
lua + tarantool
Anatoliy
Ребята посоветуйте хороший и удобный интерпретатор луа с хорошим отладчиком
vitaly
google
Snusmumriken
Ох, ну у тебя и запросы : ) Хороший и удобный интерпретатор - luajit. Отладчик - debug.debug (точка останова) и log/print. Можешь накатать более крутую функцию, типа той которая останавливает исполнение кода и начинает работать например вебсервером, и типа можно спрашивать доступные переменные/стектрейсы. Это хитро но можно. Статический анализатор - luacheck. В целом, можешь попробовать zerobrane, и прицепить туда тот же luajit.
Snusmumriken
Зачем тебе?
Snusmumriken
Не zerobrain а zerobrane. Тот кто называет его zerobrain - у того и zerobrain : ) Я плохо понимаю, что тебе мешает тупо разобраться в коде/отдебажить теми же логами.
Anatoliy
Тупо разобраться в коде ))))))))))))))
Anatoliy
Тупо в коде не разоберешся )))))))))
Anatoliy
Тупо можно только головой об стену биться
Snusmumriken
Кто писал код? : )
Anatoliy
Я
Snusmumriken
👌
Anatoliy
Разросся скрипт, проще визуально отлаживать
Snusmumriken
Заранее поставь задачу, опиши её, сформулируй основные абстрагированные объекты, например и.. Напиши ))
Snusmumriken
Начать проще с рисованием структуры на бумажке. Ах да, чтобы не усложнять себе задачу, придерживаемся правил, типа: "не используем глобальных переменных, а если используем - определяем их в начале и не переопределяем, не пишем функций и методов длиннее 30-40 строк" и т.п.
Snusmumriken
Дебаггер не помогает не писать говнокод, в общем. А нормальный код (не шибко объёмный) можно легко отдебажить без дебаггера.
Anatoliy
короче вот такая проблема - скрипт в одном месте дописывает 01 в конец открытого для чтения и записи в бинарном режиме файла, r+b, т.е. не символы 01 а число в байт, и больше ничего, после этого в другом месте скрипта уже в других действиях ошибка, вот стал отладчиком ее искать, выполняю отладку - и zerobrane в том месте где у меня идет запись 01 он пишет в один байт 01 и сразу же в следующий за ним - 55 шестнадцатиричное, т.е. получается - 01 55, хотя у меня в проге нет записи числа 55, и если выполняю прогу как обычно то никакого 55 незаписывается
Snusmumriken
1. Оформи свою фигню функциями работы с файлом, логируй функции тем же print'ом, чтобы видеть последовательность действий. 2. Ты видать всё ещё не разобрался в байтах, разберись с ними сначала. 3. Зачем нужен метод flush?
Anatoliy
В любом случае это глюк зеробрана, почему при отладке результат иной чем при обычном выполнении? Значит нужно искать другой отладчик
Snusmumriken
Отличная логика.
Snusmumriken
В любом случае это глюк зеробрана, почему при отладке результат иной чем при обычном выполнении? Значит нужно искать другой отладчик
Из твоих домоганий до англоязычного чата, я предполагаю что ты собрался читать базу данных, или что-то такое. Что ты собрался делать своими битами-байтами, алё?
Anatoliy
Ну да примерно так
Snusmumriken
Ну да примерно так
А теперь не примерно а конкретно, пожалуйста.
vitaly
vitaly
мне пару раз вправлял - помогает
Snusmumriken
Давно пора, больно смотреть на домогания до англоязычного чата. И описывает не то что хочет описать, и не понимает что делает.
Anatoliy
Счас снус тебе мозги вправит
В этом не нуждаюсь - у меня конкретный вопрос, нужен конкретный ответ, без мозго@бства
vitaly
тут тебе никто ничего не должен - снус помогает по возможности - 😂
Snusmumriken
В этом не нуждаюсь - у меня конкретный вопрос, нужен конкретный ответ, без мозго@бства
Боюсь что тебе нужно как раз то самое мозгоЁбство, иначе ты так и будешь домогаться до окружающих. Готовых результатов - не-бу-дет. Только самостоятельное понимание происходящего.
Anatoliy
Боюсь что тебе нужно как раз то самое мозгоЁбство, иначе ты так и будешь домогаться до окружающих. Готовых результатов - не-бу-дет. Только самостоятельное понимание происходящего.
Слушай у меня был конкретный вопрос - какие хорошие отладчики и интерпретаторы для луа существуют, т.е. кто чем пользуется и все, больше мне выслушивать ничего не требуется, дошло?
Anatoliy
И это уже не первый раз когда zerobrane при отладке выдает какието странности которых нет при обычном выполнении, не встречал еще никогда такого, обычно при отладке программа выполняется так же как и обычно, только пошагово
Snusmumriken
Хорошо, отлаживай print'ами. Это помогает.
Snusmumriken
Фактически, zerobrane - единственная луёвая IDE с отладчиком. Технически, из отладчиков есть ещё bird (https://love2d.org/wiki/Lovebird), но он сложный, требует библиотек и адаптации, и не даёт того эффекта.