Плюсы / минусы встроенных сред сценариев? - PullRequest
3 голосов
/ 09 апреля 2010

Для приложений .NET доступно несколько сред сценариев (например, в этом сообщении ).

Мой вопрос: в чем плюсы / минусы использования каждого из них?

Примеры включают (но не ограничиваются ими)

  • PowerShell
  • IronPython
  • Lua
  • JavaScript

Я пытаюсь решить, какой инструмент сценариев использовать в научных приложениях, чтобы опытные пользователи могли взаимодействовать со сложными моделями, чтобы они могли создавать новые алгоритмы.

Ответы [ 2 ]

2 голосов
/ 09 апреля 2010

У меня нет опыта встраивания Powershell, но я собираюсь предположить, что он во многом похож на IronPython в том, что он в конечном счете глубоко связан с CLR.

Итак:

PowerShell / IronPython

Я бы сгруппировал эти два и сказал бы, что большой позитив - это прямая способность общаться через CLR.

Минусами для них могут быть использование памяти и, возможно, производительность во время выполнения. Хотя, так как он все равно будет работать в CLR, разница не будет большой.

Lua / Javascript

Похоже, что оба будут встроены с использованием P / Invoke API. (Или COM Interop)

Pro: Быстро, меньше использования памяти. Con: P / Invoke, неуправляемый код и т. Д.

Между Луа и Javascript:

Lua может быть даже быстрее и меньше загружать память, чем Javascript, но в Javascript есть более знакомые идиомы OOP и FP, встроенные в язык.

1 голос
/ 12 июля 2010

Я думаю, вы можете убрать JavaScript из своего списка. Он не поддерживает ни комплексные числа, ни перегрузку операторов ... так что, похоже, нет способа реализовать c = a + b, если a, b, c сложны.

...