嵌入式脚本环境的优点/缺点?
问题描述:
有几种脚本环境可用于.NET应用程序(例如this post)。嵌入式脚本环境的优点/缺点?
我的问题是,使用它们每个的优点/缺点是什么?
例子包括(但不限于)
- PowerShell的
- IronPython的
- 的Lua
- 的JavaScript
我试图决定在科学的应用中使用该脚本工具允许专家用户与复杂的模型进行交互,从而创建新的算法。
答
我没有嵌入PowerShell的经验,但我会认为它很像IronPython,因为它最终与CLR深度连接。
所以:
PowerShell中/ IronPython的
我想组这两个在一起,说的大利好是通过CLR沟通能力直接。
这些消极因素可能是内存使用和可能的运行时性能。尽管无论如何它已经在CLR中运行,但它应该没有什么区别。
的Lua/JavaScript的
在这两个类似的会使用某种的P/Invoke的API最终被嵌入。 (或COM Interop)
专业:快速,更少的内存使用情况。 缺点:P /调用,非托管代码等
Lua和JavaScript之间的:
的Lua可以是更快和更小的内存猪比的Javascript,但JavaScript有更熟悉OOP和FP成语烘焙成语言。
答
我想你可以从列表中获取javascript。它不支持复数,也不支持运算符重载......因此,如果a,b,c很复杂,似乎没有办法实现c = a + b。
我列出了一些嵌入式脚本环境,但我并不是想要限制对列出的响应。 – pomeroy 2010-04-09 18:13:44
你试图编写脚本的是什么?这是用户界面的一部分吗?你的构建过程的一部分?脚本化服务器组件触发您的用户界面? – Jaxidian 2010-04-09 18:19:16