Для додатків .NET доступні декілька середовищ сценаріїв (наприклад,цей пост)
Моє питання, які плюси / мінуси використання кожного з них?
Приклади включають (але не обмежуються)
- PowerShell
- IronPython
- Луа
- JavaScript
Я намагаюся вирішити, який інструмент сценаріїв використовувати в наукових додатках, щоб дозволити досвідченим користувачам взаємодіяти зі складними моделями, щоб вони могли створювати нові алгоритми.
Відповіді:
2 для відповіді № 1Я не маю досвіду вбудовування Powershell, але я припускаю, що він дуже схожий на IronPython тим, що в кінцевому підсумку глибоко пов'язаний з CLR.
Тому:
PowerShell / IronPython
Я б об'єднав ці дві групи і сказав, що великим позитивом є безпосередня здатність спілкуватися через CLR.
Негативними для них можуть бути використання пам'яті і, можливо, продуктивність під час виконання. Хоча так як він буде працювати в CLR вже в будь-якому випадку, це не повинно бути багато різниці.
Lua / Javascript
Подібні в тому, що обидва будуть вбудовані з використанням свого роду P / Invoke API. (Або COM Interop)
Pro: швидке, менше використання пам'яті. Con: P / Invoke, некерований код тощо
Між Lua та Javascript:
Lua може бути ще швидше і менше, ніж свиня пам'яті, ніж Javascript, але Javascript має більш знайомі ідіоми OOP і FP, які випечені на мові.
1 для відповіді № 2
Я думаю, ви можете отримати JavaScript зі списку. Вона не підтримує комплексні числа або перевантаження оператора ... тому, здається, не існує способу реалізації c = a + b, якщо a, b, c є складними.