Подскажите библиотеку для реализации С-подобных скриптов для C# + Mono + .NET Core
Подскажите пожалуйста где можно взять библиотеку для реализации скриптов с простым СИ-подобным синтаксисом. Для связки .NET 4.7 + Mono и для .NET Core. Нужна поддержка булевых значений, целочисленных и с плавающей точкой, а так-же, если есть возможность, массивов, циклов (while/for), строк, enum'ов. Указатели не требуются, как и классы, не помешает поддержка нескольких функций в одном скрипте. Например в string записана текстом некая функция:
int myfunc(int param1, int param2)
{
if (param1>param2)
{
return param1-param2;
}
else if (param2>param1)
{
return param1*param1-param2;
}
else (param2==param1)
{
return (param1 / 10) * 15;
}
}
Нужно чтобы с помощью библиотеки можно было создать экземпляр класса, например:
CScript newscript = new CScript(script); //на вход string script
А затем вызывать:
object[] params = new object[] {3, 5};
object value = newscript.Invoke(params);
object value = newscript.Invoke("main", params); //если в скрипте несколько функций
По нагрузке, возможно будет ~1000-10000 вызовов Invoke на 1 ядро 3ггц. Пробовал встроенный в .net механизм, что-то не получилось под .net core, а под .net4.7+mono не представляю насколько встроенный механизм надёжен. В итоге смотрю в сторону сторонних решений.