Подскажите библиотеку для реализации С-подобных скриптов для 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 не представляю насколько встроенный механизм надёжен. В итоге смотрю в сторону сторонних решений.


Ответы (0 шт):