Size: a a a

2021 October 19

RM

Roy Mustang in pro.lua
а ты похоже давно в луа
источник

VM

Vadim Misbakh-Solovi... in pro.lua
ну, где-то между 10 и 15 годами
источник

f

fgntfg in pro.lua
Пока не надо делать миллионы операций разницы никакой. Держу пари что это не будет бутылочным горлышком твоего кода.
источник

RM

Roy Mustang in pro.lua
Нет, но у нас не один скрипт
источник

f

fgntfg in pro.lua
Как-то давным давно в этом чате измеряли как быстрее. Разница начинала быть хоть сколько нибудь значимой далеко за миллион итераций.
источник

RM

Roy Mustang in pro.lua
Я вот щас почитал немного про оптимизации луа, сказано, что локализовать надо по возможности все что лежит в глобальном пространстве
источник

RM

Roy Mustang in pro.lua
потому что глобальные функции и объекты ищутся через хеш таблицу
источник

RM

Roy Mustang in pro.lua
а локальные по индексу
источник

RM

Roy Mustang in pro.lua
это так?
источник

f

fgntfg in pro.lua
Вот так
источник

f

fgntfg in pro.lua
Есть, на самом деле, супер глобальная таблица _G, в которой все лежит
источник

f

fgntfg in pro.lua
И чтоб к ней не обращаться каждый раз используют local
источник

f

fgntfg in pro.lua
Таблица, по сути, хеш-велью хранилище. И чем оно больше, тем дольше у тебя данные из него доставать.

Но тут @mva_name или @Snusmumriken меня поправят, если я не прав.
источник

RM

Roy Mustang in pro.lua
Я правильно понял, что если в таблице не обнулять ключ, то сборщик мусора не освободит этот объект (пару) из таблицы
источник

RM

Roy Mustang in pro.lua
Если таблица глобальная
источник

f

fgntfg in pro.lua
За сборщик не подскажу. Я на lua сто лет не писал. Для верности можно и в ключ и в значение бахнуть null. Но оптимизячить надо живой код, я считаю
источник

RM

Roy Mustang in pro.lua
источник

RM

Roy Mustang in pro.lua
Вот допустим есть такой код, почему в луа не завезли способ, который позволял бы избежать двойного обращения по ключу и тем более wtf постоянно копируется?
источник

RM

Roy Mustang in pro.lua
Я вот теста ради написал чтоб узнать будет ли wtf ссылкой на объект или будет копией, оказалось что копия.
Если закомментировать 12 строку, то вывод не изменится
источник

RM

Roy Mustang in pro.lua
Не могу понять, луа в доках утверждает что копий нет, все это ссылки, но при этом мы видим что local wtf при изменении не влияет на элемент таблицы
источник