Может быть Vox * может соответствовать вашему счету?
Скрипты могут быть предварительно скомпилированы в переносимый байт-код, и их очень легко внедрить, используя API на основе стека, подобный Lua:
// most basic embedding example
VoxVM* v = vox_open(1024);
vox_aux_seterrorhandlers(v);
vox_pushroottable();
vox_dofile(v, "somescript.vx", false, true);
vox_pop(v, 1);
vox_close(v);
Для более полнофункционального примера см. etc / minimal.cpp и src / frontend / frontend.cpp
* Vox isпроект, над которым я работаю, чтобы заменить Lua в личных целях.Он основан на сильно модифицированной версии виртуальной машины squirrel3 (но не больше не совместим с белкой!).
Синтаксис также немного изменился: вместо использования <-
дляновые слоты, он использует :=
, чтобы избежать неоднозначного синтаксиса.
Ядро закончено и готово для использования во встроенных проектах, но stdlib все еще не завершен, так как Vox - очень молодой проект (из-за этогодокументация в настоящее время отсутствует, но stdlib является хорошим примером для встроенного программирования, а также примеров для сценариев общего назначения).