Виртуальная машина с открытым исходным кодом
Я ищу виртуальную машину с открытым исходным кодом, которая:
- быстро и как можно более легкий
- поддерживает минимальный набор байт-кода (например, LLVM IR)
- легко встраиваемый из приложения C++
- кросс-платформенный (Linux, Windows и OS X)
- поддержка x86
4 ответов
зачем отфильтровывать LLVM ? Это набор библиотек C
Я думаю, что это не так просто встроить, чем Lua, но LLVM настолько велик, что он, вероятно, преодолеет хлопоты по его интеграции. См.это так вопрос, это поможет ?
Lua славится тем, что смехотворно легко вставляется в C/C++. Его VM является открытым исходным кодом и кросс-платформенным, очень маленьким (как размер exe, так и набор команд байт-кода) и в то же время довольно быстрым. Но его байт-код может быть не подходит для вашего языка. формат байт-кода задокументирован здесь.
NekoVM - это язык программирования и легкая виртуальная машина, разработанная в качестве общей цели для авторов компиляторов. документация Кажется, что очень легко встроить VM в приложение C или C++, но, похоже, API VM еще не документирован.
другой возможный ответ: почему бы не вывести ассемблер вместо этого ? он быстрый и легкий, и вам вообще не нужна виртуальная машина. Поскольку вы нацелены только на x86, это может иметь смысл, в зависимости от того, что вы пытаетесь сделать.