Комментарии 9
Наконец, родился более реалистичный пример использования Umka по его основному назначению, т. е. как встраиваемого языка.На какой базовый ЯП (чтобы в него встраивать) ориентируетесь?
0
Сейчас это C/C++. Другие языки — при наличии совместимого ABI вызова динамических библиотек. Поскольку многие языки хотят так или иначе работать с DLL, это не должно быть препятствием.
0
Разумно… Может ваша шутка про интерес игроделов к скорости вашего ЯП не такая уж и шутка.
Вы наверняка много знаете про проблемы и пути развития встраиваемых ЯП. В этом контексте кмк будет очень эффективно (и эффектно) делать пиар для Umka.
Вы наверняка много знаете про проблемы и пути развития встраиваемых ЯП. В этом контексте кмк будет очень эффективно (и эффектно) делать пиар для Umka.
0
А кстати, как бы вы обозначили эти проблемы, помимо быстродействия? Для большинства программистов проблем, кажется, и вовсе нет, когда под рукой Lua/LuaJIT (с последним только та проблема, что Майк Полл перестал им заниматься).
0
Так что у вашего языка есть шанс: прикрутите MirJIT и будете вторым после LuaJIT (а это уже круто. Учитывая, какой противный язык Lua, многие мечтаю о вменяемой альтернативе).
https://github.com/vnmakarov/mir
0
Интересный проект, не первый раз о нём слышу. Но беглый просмотр вызывает некоторые сомнения (поправьте, если я заблуждаюсь): документация скудная; нет разобранных примеров; нет готовых дистрибутивов в виде DLL; непонятно, откуда импортируются функции стандартной библиотеки C (нужно тянуть за собой libc/msvcrt?); непонятно, что делать с нетривиальными частями виртуальной машины — например, сборщиком мусора.
0
Спасибо, очень понравилась первая ссылка — взгляд на проблему с другой стороны баррикад. Хотя некоторые утверждения там весьма поверхностные:
Добавим сюда всякие задержки на сборке мусора, поиску метода по цепочке наследования — и окажется, что тормозить там есть чему.
Lua — это стековая машина, и там, на самом деле, просто нечему тормозить.На самом деле, начиная с версии 5, Lua перешла от стековой машины к регистровой и получила от этого большой прирост быстродействия. У меня один и тот же численный алгоритм на Lua 5 работал в 2-3 раза быстрее, чем на Lua 4.
Добавим сюда всякие задержки на сборке мусора, поиску метода по цепочке наследования — и окажется, что тормозить там есть чему.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Umka. Жизнь статической типизации в скриптовом языке