Snusmumriken
Гит где-то есть.
Snusmumriken
И там даже есть пара скриптов 2014 года, когда я только учился. Какахи, в общем.
B
не влияет особо на работу приложения,такая, своего рода, иерархичная, структура?
B
если я к примеру буду собирать модули в модули для удобства, что б не добавлять каждый рас кучу всего а подключать только один модуль
Roman
так обычно и делают же, require "somelib" реквайрит все сразу, а require "somelib.somemodule" только часть
Snusmumriken
Видел enet. Там другие совершенно конкретные проблемы, в отсутствии возможности использовать порт для чего угодно кроме enet, Допустим, ты сначала хочешь пробить порт и соединиться им из-за NAT с другим устройством, за NAT.
Tverd
Насколько я понял там гибко это... Сильно не разбирался, на полку себе положил, на время.... Может конечно данная проблема и присутствует. Лично мне это не мешает ибо сервер нужен. Я так понимаю тебе нужен p2p?
Snusmumriken
У enet гибкость относительная. Там в любом случае протокол от которого никуда не деться.
Tverd
В любом случае пиши, будет познавательно, если есть желание
Roman
Посоветуйте парсер json, чтобы по скорости как cjson и мог null парсить в lua nil?
Tverd
https://github.com/mpx/lua-cjson/ это вот под луа
Tverd
Насчет null не знаю, надо тестировать. С другой стороны если будет nil - то ключ просто исчезнет
Tverd
Есть и под luajit
Tverd
https://github.com/bungle/lua-resty-libcjson
Roman
в этом и вся прелесть nil, ключ исчезает
Roman
его даже по сети передавать не надо
Roman
в js потом пустое значение само даже станет null'ом!
Tverd
Вот прямо заинтриговал ) Надо будет погонять-посмотреть
Roman
json.decode "null" от bungl'а тоже таблица для нуля
Tverd
Кто такое может из парсеров
Roman
пока пишу if var ~= nil and var ~= null, где нул приходится вытягивать из либы cjson'а
Snusmumriken
А можешь писать if var then ...
Snusmumriken
Ибо false and nil == false
Anonymous
А если все таки надо передать, что один какой-то ключ стал nil, одной ведь таблицей не обойтись из-за этого?
mva
Ибо false and nil == false
false and чтоугодно == false
Snusmumriken
Ну, это тоже. Тогда nil == false and false == false
Evgeniy
Всем привет! Подскажите пожалуйста, существует ли графический дебагер для луа или может быть есть какие-нибудь best practies для дебага скриптов ?
Tverd
Привет! Ну то что я знаю - ZeroBrain умеет дебажить... это раз. LuaGlider - 2. И debug библиотека самого луа )
Tverd
Обычно пользуюсь последним... Но думаю надо осваивать нормальные инструменты
fgntfg
Я zerobrain использовал.
Evgeniy
Понятно, спасибо, попробую :)
Snusmumriken
Snusmumriken
Но зато на выходе любой дебаггер по желанию.
Sergey
false ~= nil, для протокола.
Snusmumriken
Окей, хочешь я составлю табличку?
Nikita
здравствуйте. можете подсказать в столь нетревиальной задаче? у нас часть модулей к nginx написаны на lua. nginx работает как реверс прокси. надо сделать подзапрос, с основного запроса но в иное место ( не важно куда, и как сделать знаем ), сложность в том, что надо как то научить на луа нгинкс не ждать ответ с этого подзапроса. т.е. типа как удп пашет - послал и забыл.
Roman
Вообще не ждать или колбек как в ноде?
Nikita
вообще не ждать
Nikita
т.е. основной ответ он ждет, а вот этот второстепенный - чисто послать и забыть про него
Roman
насколько я знаю, есть объект sock, и у неё методы - send, receive и прочие
Roman
сделать send и после сразу sock:close(), разве что-то не так?
Roman
udp, кстати, в openresty есть, если о ней речь
Nikita
спс, сейчас у разрабов уточню по поводу этого вектора
mva
lua-l кто-нибудь читает? :)
mva
там сейчас обсуждение опроса с SO, где толпа леммингов высказала, что использует Lua, но планирует прекратить и не хочет возвращаться обратно.
mva
привереды, понимаешь. "Батареек" им не хватает 😃
Snusmumriken
Ну, батареек и правда не хватает, приходится писать кучу всего. Или качать, но у меня сомнения в оптимизации скачанного, а производительность нужна бешеная.
Yogurt
Батарейки?
Tverd
А чего это им не хватает в скриптовом языке? который изначально придуман для склейки С кода?
Tverd
И очень хотелось бы узнать какие альтернативы они предлагают
mva
бидон, очевидно же :)
Tverd
очень интересна его производительность на мобилках в играх
mva
ну, учитывая, что некоторые современные мобилки помощнее даже некоторых серверов...
Tverd
я сам пишу на питоне системные вещи, но луа и питон - ну совсем разные ниши
Tverd
вот если они хотят что бы с луа шел набор библиотек оттестированных и оптимизированных - тут я могу понять... Но никто не хочет за это видать браться
mva
это-то, оно да. Мне нравится, как один мой хороший знакомый сказал: > Python trying to give you as much as possible, while Lua tries as less as possible // впрочем, за писание на питоне системных утилит (особенно на втором) и гуеприложений я бы всё равно наказывал
Tverd
последняя фраза не понятна - в смысле бы их не сам писал, а заказывал?
mva
нет
mva
в угол ставил
Tverd
ааа ) понятно теперь
Tverd
ну тех которые идут ОС? это да... помню как в распберри сеть искал какой-то питонячий демон
mva
ну, вот из самых бесячих питонокакашек - virt-manager
mva
если у него проблема с передачей хотя бы пары пакетов по сети - висит весь гуй
Tverd
ну это так написали...
mva
и это пишут люди на фулл-тайме, за зарплату в RedHat'е
Tverd
так можно и на С написать
mva
так можно и на С написать
у питона порог входа куда ниже :D
Tverd
это да... пойти что ли в редхат? )))))))))))
Ixtis
Не нужно трогать питон плиз, а написать плохо можно на любом языке
Tverd
Ну Мих, можно конечно... По этому и я говорю, что для всего свой инструмент
Tverd
Ну и один и тот же человек, боюсь, одинаково хреново напишет приложение на многих языках ))))
Tverd
дело в человеке
mva
// никак не могу найти ту картинку про "основные проблемы программиста на Python"
Tverd
надо заканчивать, мы все таки в луа
mva
// кстати, я сколько раз ловил себя на том, что в большинстве случаев переписать код с Python на Lua довольно легко. В отличие от всяких там рубей, эрлангов и т.п.
mva
ну, естесственно, с поправкой на отсутствие использования килотонны внешних библиотек :)
Roman
А чего обычно так нехватает, что все жалуются?
Roman
Например