Roy
Помянем
Highly Likely
А вообще, преждевременная оптимизация — это путь в преждевременную оптимизацию и никуда больше
fgntfg
Факт.
Roy
А в чём инвалидность?
На нем геморрой писать
Roy
Хотя код на нем быстрее чем на плюсах можно написать
Roy
Большой плюс в том, что в Си используют не string, а char с фиксированными размерами
Roy
За счет этого избегаются аллокации во многих местах
Roy
да и POD типы лучше оптимизируются
Tony
На нем геморрой писать
Не знаю, мне больше гемора было отдебажить цикл на Lua
Highly Likely
@Snusmumriken напиши бота который будет пинать людей за попытку написать ЛУА
Highly Likely
А то мне лень и некогда.
Tony
Lua.
Лишний шифт, извиняюсь
mva
Highly Likely
Если Снус это Lawful Good, то мы с Вадимом, видимо, Lawful Evil
Highly Likely
Подразумевая то, что самые душные админы в чате...
mva
а fails - true neutral 😃
Highly Likely
а fails - true neutral 😃
То есть ему абсолютно безразлично что тут происходит, да :)
Иван
А возможно ли свой список сделать используя Lua API?
Иван
(вектор как в плюсах)
Roy
Еще один вопрос есть по поводу корректного использования local с таблицами
Roy
Roy
Вот допустим, я изначально PlayerInfo присвоил CI.Players[PID] Но при этом, ниже есть условие, что если PlayerInfo == nil, то мы инициализируем CI.Players[PID] таблицу, будет ли у меня после этой инициализации PlayerInfo указывать уже не на nil, а на инициализированный объект или нет и нужно переприсвоить?
Highly Likely
Тут кроется какое-то фундаментальное непонимание сути переменных и того как они работают (видимо, в общей концепции в том числе)
Roy
А в луа можно что-то типа такого?
Highly Likely
И какое-то нежелание пойти читать доки
Highly Likely
В луа - да
Судя по всему оно фундаментальное, Луа тут просто симптом
Roy
И какое-то нежелание пойти читать доки
Да потому что это долго, у нас луашник есть, но он не знаток
Highly Likely
Это не перл :-)
Roy
А мы тут гугол? :)
Нет, ну вам же интересно бывает на вопросы отвечать или они слишком тупые и простые чтоб вызывать интерес?
Highly Likely
Нет, ну вам же интересно бывает на вопросы отвечать или они слишком тупые и простые чтоб вызывать интерес?
До тех пор, пока ответ на них есть в первых пяти-шести главах PiL’а — отвечать не очень интересно
Highly Likely
Я рад ответить на 1-2-3 таких вопроса, но не на 10. Я, в конце концов, не интерпретатор :-)
Roy
Честно говоря, я вообще не фанат читать, люблю посмотреть семинары, видосы, но читать еще и инглиш - терпения не хватает, хотя луа по докам маленький. Я больше кодить люблю (практику)
mva
да, называется СДВГ
Roy
Roy
да, называется СДВГ
Да я и так купил недавно таблетки для мозгов, а то в последнее время какой то потерянный стал
Roy
Забывать начал уже
Highly Likely
да, называется СДВГ
Не факт, не всегда
Highly Likely
Чаще это просто отсутствие дисциплины/мотивации/концентрации
Highly Likely
Мне тоже периодами сложно долго и много читать. А другими — норм. И обычно коррелирует с усталостью/тревожностью
Highly Likely
Первое предупреждение за мат. Второе предупреждение за самолечение ноотропами, критически не одобряю.
Highly Likely
Дальнейшее обсуждение психоактивных веществ будет караться баном.
Snusmumriken
@Snusmumriken напиши бота который будет пинать людей за попытку написать ЛУА
Я хочу написать бота, который будет пинать людей за попытки докопаться до орфографии.
fgntfg
mva
Я хочу написать бота, который будет пинать людей за попытки докопаться до орфографии.
ну, в случае когда пишут LUA это не докапывание до офографии. Я ж ссылку дал, прямо на офсайте написано "ПОЖАЛУЙСТА, НЕ ПИШИТЕ ТАК" :)
Snusmumriken
Когда смысл донесён — нет разницы. Просто считай что это капсом написали.
Snusmumriken
Я ж говорю. Снус — лавфул гуд
Хаотик/нейтрал, лауфулы как раз защищают правила и правильность.
Highly Likely
Иван
Карочи, абстрагируешь всю байтоёбскую ерунду на сишной стороне, логику делаешь на луях, развлекаешься. Луа с сишкой работает очень прямо и приятно. А то с двумя метрами оперативки особо не разгуляешься, для чисто луёвых вариантов хочется хотя бы 16.
Мне кажется, можно разгуляться с двумя метрами... У нас уже написанные игры на языке Pawn вообще не подразумевали динамическую аллокацию памяти. А в итоге, я провёл бенч, который показал, что LuaJIT без JIT довольно мало кушает. wasm3 мы ещё хотели затащить. Хз как они его затащат, но то, что сейчас есть на wasm - ужас
Иван
Фибоначчи есть, конечно
Roy
Вопросик по поводу памяти есть. Если у нас есть таблица, то для ее освобождения надо дать ей nil, так? А если у это таблицы есть объект с несколькими полями, то установка nil на эти поля как то влияет на память? local table = {} table = nil // освободит память когда сборщик мусора пройдется?
Roy
другой пример local tables = { name = "Vasya", age = 21 } tables.name = nil
Roy
Влияет ли как то nil в обеих случаях на память и сборщик мусора?
Aydar
а если глобальная таблица или объект
А если глобальная то наверное когда-то после присвоения nil сборщик уберёт при условии что других ссылок нет.
Aydar
Я вот не понял, а если есть ссылки на локальный объект или глобальный?
Если в глобальной таблице сделать ссылку на локальный объект то он будет жить до тех пор пока ты не установишь эту новую ссылку в nil
Aydar
Я вот не понял, а если есть ссылки на локальный объект или глобальный?
Последнее сообщение отредактировал, может понятнее станет, но не факт что это правда :)
Иван
if (lua_getglobal(L, LUA_ABILIBNAME)) { lua_callfield(L, "run", 0, 0); //... lua_pop(L, 1); // --> правильно ли? } else { log_e(LUA_ABILIBNAME" not loaded"); }
Иван
я pop-аю LUA_ABILIBNAME
Иван
> Pops n elements from the stack. да, всё так
Иван
а внутри Cи функции попать аргументы перед return не надо?
Aydar
а внутри Cи функции попать аргументы перед return не надо?
Можно чистить а можно не чистить, после return'a Lua автоматически чистит стэк. "From the point of view of C, a C function gets as its single argument the Lua state and returns (in C) an integer with the number of values it is returning (in Lua). Therefore, the function does not need to clear the stack before pushing its results. After it returns, Lua automatically removes whatever is in the stack below the results."
Snusmumriken
При недостатке оперативки лучше чистить, но наверное не в конце каждой функции а каждого тика.