Igor
Aqendo
Ничего себе)
Igor
Этому апдейту вроде недели 2-3
Null
Null
потому что там js есть и можно относительно легко прикрутить
Igor
да не, в вебе уже давно есть
А, это я наверное фикс какой-то вспомнил этой фишки, там же вроде был как раз недавно апдейт с ней связанный
Null
а в tdesktop (да и на мобиле) не всё так просто
Igor
А так да, вспомнил, что уже довольно давно её использовал
Igor
Ну у меня 98% телеграмной жизни проходит в вебе, так что не страшно)
Igor
Он и под мобилки, кстати, адаптирован, если бы пользование веб приложениями с телефона не вызывало бы дикую боль в пятой точке, я бы именно его и использовал.
Null
Igor
Igor
Мне такой дезигн нравится даже куда больше, чем тот, что есть у tdesktop и мобильной аппки.
Mike_Went
(решено, уже не актуально)
господа, есть вот такой алгоритм калькуляции CRC16 на плюсах.
задача: переписать его на Lua.
(под nodemcu).
вознаграждение: 50 USD любой криптой.
Mike_Went
<3
Tony
Mike_Went
Tony
Чтобы не переписывать, а просто использовать
Vyacheslav
https://github.com/cloudwu/skynet/blob/master/lualib/skynet/db/redis/crc16.lua
Mike_Went
это я всё видел и искал, версий CRC слишком много и они несовместимы.
Mike_Went
каждый вендор пишет свою.
Mike_Went
я в плюсах ноль и повешусь пока буду переписывать это сам.
Vyacheslav
только тут инит 0 а у тебя ffff
Luсky
Vyacheslav
crc определяется инитом и полиномом. полином тут совпадает, только инит поменять
Денис
Чего-то я торможу чтоли... Или как...
Создаю rockspec. Почитал доку на полтора километра. Вроде проникся. Создаю. Пытаюсь установить с репозитория:
PS C:\Users\denis> luarocks install https://github.com/outsidepro-arts/AlienTolkLua/blob/main/tolklua-1.0-1.rockspec
Error: Could not load rockspec file B:\temp/luarocks_luarocks-rockspec-tolklua-1.0-1-5467/tolklua-1.0-1.rockspec (Error loading file: [string "B:\temp/luarocks_luarocks-rockspec-tolklua-1...."]:8: unexpected symbol near '<')
PS C:\Users\denis>
Решил, что цифра 8 после двоеточия указывает на строку с ошибкой. Заглянул в rockspec. На этом месте находится summary, вполне даже с обычной строкой в кавычках... Решил поискать по коду символ "<". Нашел, но он был прямо скопипасчен с доки:
"lua >= 5.1, < 5.4",
Строка номер 18. И не 8 нифига… Решил проверять валидность rockspec через LuaRocks pack. Выяснил, что накосячил с форматом имени файла, потом накосячил с форматом версии. Все исправил. Локально рок парсится. Заливаю на репозиторий - ровно та же самая ошибка, что в первом блоке... Решил посмотреть в темпах куда указывает - там вообще ничего нет. Да, у меня темпы на виртуальном диске, который обнуляется, но после ребута, так что пропасть оно само не могло. Значит, LuaRocks таки чистит за собой мусор.
Где я неправ?
Денис
Чего-то я торможу чтоли... Или как...
Создаю rockspec. Почитал доку на полтора километра. Вроде проникся. Создаю. Пытаюсь установить с репозитория:
PS C:\Users\denis> luarocks install https://github.com/outsidepro-arts/AlienTolkLua/blob/main/tolklua-1.0-1.rockspec
Error: Could not load rockspec file B:\temp/luarocks_luarocks-rockspec-tolklua-1.0-1-5467/tolklua-1.0-1.rockspec (Error loading file: [string "B:\temp/luarocks_luarocks-rockspec-tolklua-1...."]:8: unexpected symbol near '<')
PS C:\Users\denis>
Решил, что цифра 8 после двоеточия указывает на строку с ошибкой. Заглянул в rockspec. На этом месте находится summary, вполне даже с обычной строкой в кавычках... Решил поискать по коду символ "<". Нашел, но он был прямо скопипасчен с доки:
"lua >= 5.1, < 5.4",
Строка номер 18. И не 8 нифига… Решил проверять валидность rockspec через LuaRocks pack. Выяснил, что накосячил с форматом имени файла, потом накосячил с форматом версии. Все исправил. Локально рок парсится. Заливаю на репозиторий - ровно та же самая ошибка, что в первом блоке... Решил посмотреть в темпах куда указывает - там вообще ничего нет. Да, у меня темпы на виртуальном диске, который обнуляется, но после ребута, так что пропасть оно само не могло. Значит, LuaRocks таки чистит за собой мусор.
Где я неправ?
А, кажется, дошло... Ему надо raw кормить, иначе ему же страница гитхаба приходит!
Денис
А, кажется, дошло... Ему надо raw кормить, иначе ему же страница гитхаба приходит!
Таки скормил raw. Не может подключиться к GitHub... Но он же по идее должен прямо с корня репозитория найти rockspec…
PS C:\Users\denis> luarocks install https://github.com/outsidepro-arts/AlienTolkLua
Error: No results matching query were found for Lua 5.3.
To check if it is available for other Lua versions, use --check-lua-versions.
PS C:\Users\denis> luarocks install https://github.com/outsidepro-arts/AlienTolkLua --check-lua-versions
https://github.com/outsidepro-arts/alientolklua not found for Lua 5.3.
Checking if available for other Lua versions...
Checking for Lua 5.1...
Checking for Lua 5.2...
Checking for Lua 5.4...
Вопрос о моей правоте остается открытым...
Aqendo
Mike_Went
wennerryle #nowar #htswasl?
wennerryle #nowar #htswasl?
но все же соглашусь, что почти все компоненты пишутся для ПК бояр(
Igor
Igor
Которое работает так лишь бы работало
wennerryle #nowar #htswasl?
Тинькофф на нем писали интерфейс для банкоматов
Rider
Приветствую кодеров!
Rider
Нужна помощь. Код утечку памяти вызывает
Rider
function file_exists(name)
local f=io.open(name,"r")
if f~=nil then
price_infile=f:read("*l");
io.close(f) ;
return true ;
else return false end
end
Igor
Igor
В любом случае, с ним или без него Lua не имеет такого понятия как "утечка памяти"
Igor
Любая неиспользуемая память, которая была самим Lua зарезервирована в один прекрасный момент освободится сборщиком мусора.
Rider
ща покажу.
Igor
Он отрабатывает раз в n-ое кол-во шагов машины
Rider
как-то так...... Это КВИК. утечка именно в этих строках что я выложил выше. Я что-то про утечку похожую при использовании функции даты какой-то читал и исправлял у себя. сегодня не вспомню.
Rider
тут скрипты одинаковые. разные по таймингу исполнения
Igor
Rider
1, 8, и 10 секунд
Rider
возможно,))) просто люблю когда красиво)
Igor
1, 8, и 10 секунд
А ты попробуй после каждого вызова file_exists поставить вызов collectgarbage()
Igor
Результаты удивят
Rider
Ок спасибо! попробую. главное чтоб ничего не сломалося😭
Igor
Если его оставить, это снизит производительность скрипта в целом, ибо сборщик будет занимать процессорное время. Пусть и не много, но от количества мусора зависит и то, насколько быстро он отработает. Лучше оставить весь хлам на совести Lua и не трогать его самому.
Rider
Rider
Snusmumriken
с квиком не поспоришь😂😂😂
Квик принципиально ничем не отличается от любого другого приложения со встроенными луями.
Смотри утечки в другом месте.
Rider
Snusmumriken
Давай, кидай на пастбин :)
Rider
пастбин эт шо)
Snusmumriken
pastebin.com
Null
Null
освободи память и вызови сборщик мусора, и не будет никаких утечек
Snusmumriken
Так вот. Почему код может неожиданно замедляться:
1. У тебя огромные списки (гигантские), которые растут со временем.
2. У тебя кривые On^2 или более хреновые алгоритмы по обработке этих списков
Highly Likely
Никнейм оправдывает автора, хе
Null
Highly Likely
Snusmumriken
А раскрой первую мысль, пожаста
Ты такой прочитал файлик со списком элементов 20мб и обработал его. Чем-то линейным.
Он отработал за 1 секунду.
Ты такой прочитал файлик со списком элементов на 160мб и обработал его. Тем же самым.
Он отработал (вот неожиданность) за ~8 секунд.
Snusmumriken
Допустим, ты обрабатываешь какую-то фигню и постепенно её дополняешь.
Качаешь котировки, добавляешь их в список и прогнозируешь по всем данным начиная с первой.
Список котировок постепенно растёт со временем, и время обработки аналогично вырастает.
Highly Likely
Rider
Спасибо. Чтото я тут говна хлебнул..... сам справлюсь. Хорошего вечера