Я работаю над встроенной системой под управлением Linux на DSP. Теперь мы хотим сделать некоторые части этого сценария доступными, и мы ищем хороший встраиваемый язык сценариев. Эти скрипты должны хорошо сочетаться с нашей существующей базой кода С++, быть маленькими и быстрыми.
Я понимаю, что Lua - это выбор отрасли для таких проблем. Вероятно, мы поедем с Lua, потому что это проверенный и проверенный и стабильный и так далее. Однако, как язык программирования, он имеет некоторые довольно изворотливые углы.
Итак, какие альтернативы существуют для встраиваемых языков?
EDIT:
Это примерно через год.
Мы фактически использовали Lua на нашей встроенной системе, и она отлично работает. Со временем мы добавили все больше и больше поддержки скриптов в все больше и больше частей проекта, и это действительно помогло нам с этим справиться.
Производительность на самом деле выдающаяся. Даже довольно сложные операции, связанные с поиском длинных массивов или причудливыми струнными операциями, выполняются на удивление хорошо. В основном мы никогда не сталкивались с проблемами производительности, связанными с Lua.
Взаимодействие с функциями C очень просто и работает очень хорошо. Это позволило нам безболезненно развить систему сценариев.
Наконец, мы были поражены тем, насколько гибким оказался Lua. Наш интерпретатор Lua должен работать в системе с нестандартным распределителем памяти и без поддержки двойного типа данных. В одном файле заголовка есть два хорошо документированных места, которые мы должны были изменить, чтобы Lua работал над этой системой. Это действительно хорошо подходит для встраивания!