Форум программистов, компьютерный форум, киберфорум
Наши страницы

Lua

Войти
Регистрация
Восстановить пароль
 
DCNick3
4 / 4 / 1
Регистрация: 03.05.2014
Сообщений: 101
#1

Портирование lulu на Lua 5.2 - Lua

31.01.2016, 18:50. Просмотров 548. Ответов 4
Метки нет (Все метки)

Значит вытащил я из недр интернета проект lulu. Виртуальная машина Lua, написанная на Lua. Написана она под Lua 5.1.
А мне вот приспичило её запустить на Lua 5.2. Внешне изменений мало, а под капотом - завались. Ну что же, новый формат чанков я читать её научил, опкоды поправил. Единственное с чем проблема возникла - upvalues. Что это такое более-менее разобрался. Но дело в том что теперь в этих upvalues хранится и окружение (раньше это было поле прототипа). С этим я вообще увяз, намудрил и запутал. Если кто-то поможет буду очень рад.

Прикреплю lulu мой и оригинальный, и сырцы lua на всякий пожарный.
0
Вложения
Тип файла: zip lulu+lua.zip (678.3 Кб, 4 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2016, 18:50
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Портирование lulu на Lua 5.2 (Lua):

LUA + C++ - Lua
Привет всем :) я чото не понимаю чо у меня выевляется ошибки luaavg.obj : error LNK2001: неразрешенный внешний символ...

Плагин на Lua - Lua
Я не программист и всего чуток разбираюсь в Lua, поэтому все манипуляции с плагином проводились методом тыка=) Это изначально не мой...

Кириллица из Lua в C# - Lua
Добрый день, друзья! Начинаю знакомство с Lua. Столкнулся с проблемой некорректного чтения кириллицы в скриптах. Сам скрипт...

Установка Lua - Lua
Здравствуйте! Подскажите, пожалуйста как это сделать: Что бы вы могли запускать луа откуда угодно – вам надо добавить их (путь к ним)...

Ошибка lua - Lua
Всем привет Попался мне один файлик resource.car после его распаковки появилось 40 файлов с расширением lu Скрин...

Lua шифрование - Lua
Здравствуйте, есть такая задачка, кто-то сможет помочь? В файле содержатся целые числа в десятичном виде. Преобразовать каждое число в...

4
ProgJ
87 / 85 / 10
Регистрация: 20.11.2008
Сообщений: 724
01.02.2016, 08:49 #2
вряд ли это будет кому-то интересно. Разве только, чтоб разобраться в устройстве Lua
Зачем нужна виртуальная машина, которая на два порядка медленнее стандартной?
Проект не обновлялся 7 лет и если его переписывать, то почему не на последнюю версию Lua?
0
DCNick3
4 / 4 / 1
Регистрация: 03.05.2014
Сообщений: 101
07.02.2016, 23:23  [ТС] #3
Цитата Сообщение от ProgJ Посмотреть сообщение
почему не на последнюю версию Lua
Потому что гладиолус последняя версия Lua не поддерживается той конечной машине, для которой вся эта канитель затевалась.
А вот во внутреннем устройстве можно как раз разобраться. Я немного это дело покапал. И в итоге заступорился на TAILCALL да и CALL тоже. Мне кажется, что в lulu было много костылей реализация отличалась от реализации в оригинальной lua. Мне вот еще более крутыми костылями удалось её хоть как-то запустить. Но там не правильно работали UPVALUES и (как я сейчас понял) не всегда заведётся она. [плавный переход в оффтоп]

Не по теме:

Вот какой их чёрт побрал удалять свойство _ENV у функции и пихать всё это в upvalues?! И как (традиционное российское блюдо) оно работает?! Как вызываются эти чанки?!

...
Гениально, надо искать в сырцах. Придётся этим опять занятся....
[/КрикДуши]
0
ProgJ
87 / 85 / 10
Регистрация: 20.11.2008
Сообщений: 724
08.02.2016, 00:25 #4
Если я правильно понял, у вас есть что-то, чему вы хотите скормить lulu, чтобы дальше кормить не на прямую, а через lulu. А зачем?
0
DCNick3
4 / 4 / 1
Регистрация: 03.05.2014
Сообщений: 101
10.02.2016, 10:22  [ТС] #5
Цитата Сообщение от ProgJ Посмотреть сообщение
Если я правильно понял, у вас есть что-то, чему вы хотите скормить lulu, чтобы дальше кормить не на прямую, а через lulu. А зачем?
Именно. А нужно это для получения относительно честной многозадачности.
0
10.02.2016, 10:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2016, 10:22
Привет! Вот еще темы с ответами:

Парсер на lua - Lua
Тут описано как подключить и использовать и библиотеку для языка lua http://www.cyberforum.ru/cpp-builder/thread68085.html Возможно ...

Парсинг lua - Lua
Здравствуйте форумчане,меня озадачило такой задачей,нужно из текста Client ping times: 62 ms : Чпоньк 77 ms : Aнимешник+))) ...

Lua 5.3 и LuaJit - Lua
Возможно ли совместить subj в проекте одновременно? Требуется часть скриптов выполнять в среде Lua, а часть - в среде LuaJit. Динамическая...

Lua, Android - Lua
Доброго времени суток. Хочу попробовать себя а в разработке игр под Android (Android под Java начал осваивать недавно). Получил предложение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru