Size: a a a

2020 April 23

LO

Lucky Ook in pro.lua
Александр Караев
Подскажите, какие есть альтернативы luajit?
Сижу на lua 5.3, слезть нет варианта (пользователи привыкли, скрипты переписывать не будут). luajit, как известно, 5.3 не поддерживает. Может есть другие варианты, сторонние реализации? Я бы поизучал
источник

S

Snusmumriken in pro.lua
Александр Караев
Подскажите, какие есть альтернативы luajit?
Сижу на lua 5.3, слезть нет варианта (пользователи привыкли, скрипты переписывать не будут). luajit, как известно, 5.3 не поддерживает. Может есть другие варианты, сторонние реализации? Я бы поизучал
Ну с одной стороны, можно пересадить на luajit и вшить какой-нибудь скрипт дающий обратную совместимость (пересаживающий unpack в table, например). Покроет не полностью (часть метаметодов и баловство с _ENV не получится сэмулировать), но так-то пользователи разве этим злоупотребляют? При не шибко глубоком погружении в дебри версионных фич, будет достаточно просто сменить версию.
источник

S

Snusmumriken in pro.lua
В целом, как-то так
источник

A

Ameliance SkyMusic in pro.lua
Snusmumriken
Ну вот тут всё довольно простое. Тебе всё в целом понятно?
да не, не было ясно, я еще час потом смотрел в этот код😅 Вроде дошло, но столько движений... эх... нужно будет с нуля написать еще одну библиотеку, к примеру для фейдеров и тогда может дойдет основательно
источник

LO

Lucky Ook in pro.lua
Собран экспериментальный портативный INSTEAD для Linux (AppImage). Прошу всех заинтересованных потестировать: https://github.com/instead-hub/instead/releases/download/3.3.2/INSTEAD-3.3.2-x86_64.AppImage
источник

LO

Lucky Ook in pro.lua
Переслано от Peter K
источник

LO

Lucky Ook in pro.lua
Ameliance SkyMusic
да не, не было ясно, я еще час потом смотрел в этот код😅 Вроде дошло, но столько движений... эх... нужно будет с нуля написать еще одну библиотеку, к примеру для фейдеров и тогда может дойдет основательно
Но можно же наверно просто дёргать некоторые узкие места через жит, оставаяст при этом в Lua 5.3
источник

S

Snusmumriken in pro.lua
Это костыль ))
источник

A

Ameliance SkyMusic in pro.lua
Lucky Ook
Но можно же наверно просто дёргать некоторые узкие места через жит, оставаяст при этом в Lua 5.3
?
источник

S

Snusmumriken in pro.lua
Ну типа
data = os.execute("luajit path/to/highload/script.lua arg1 arg2")
источник

LO

Lucky Ook in pro.lua
Ну, костыль, ага. Но рабочий же. Или есть какие-то накладные расходы. которые могут съесть профит?
источник

S

Snusmumriken in pro.lua
Собсно, время на инициализацию новой виртуальной машины и консольки, невозможность передать туда большие объёмы данных: иначе не получится прочитать ответ, ибо io.popen поддерживает только read или write, но не вместе, так что если запрос велик — его придётся записывать в файл и посылать на приложулю имя файла с запросом.

То есть, оно может быть и неплохо, но только если есть задача потребляющая больше условных пяти секунд, и если по нескольким небольшим аргументам можно запустить большую сложную задачу.
источник

LO

Lucky Ook in pro.lua
А оно основной поток до получения data останавливает?
источник

S

Snusmumriken in pro.lua
А то ))
источник

S

Snusmumriken in pro.lua
Нет, под вендой можно запускать через "START luajit ...", но тогда придётся ждать пока прога не напишет ответ в файл ))
источник

A

Ameliance SkyMusic in pro.lua
Snusmumriken
Ну вот тут всё довольно простое. Тебе всё в целом понятно?
нарисовал таблицу себе, но все равно мозг пока сопротивляется... может что не то?
источник

A

Ameliance SkyMusic in pro.lua
поправил
источник

A

Ameliance SkyMusic in pro.lua
как вариант
источник

A

Ameliance SkyMusic in pro.lua
еще вариант
источник

A

Ameliance SkyMusic in pro.lua
#вопрос
это нормально, что в таблицу ЭЛЕМ в качестве метатаблицы передается таблица ЭЛЕМЕНТ, где находится сама таблица ЭЛЕМ?
источник