【发布时间】:2009-02-10 19:34:43
【问题描述】:
首先,我应该让你们知道我想要做什么。我正在处理的项目有一个需要构建自定义脚本系统的要求。这将由使用该应用程序的非程序员使用,并且应该尽可能接近自然语言。一个例子是,如果用户需要运行自定义模拟并绘制输出,他们编写的代码需要看起来像
变量 input1 为 10; 变量 input2 为 20;
变量 value1 是 AVERAGE(input1, input2);
变量条件1为真; if condition1 then PLOT(value1);
可能没有多大意义,但这只是一个例子。 AVERAGE 和 PLOT 是我们想要定义的函数,它们不应该被允许改变它们,甚至不应该看到它们是如何工作的。 DLR 可以实现这样的事情吗?如果不是,我们还有什么其他选择(从 ANTRL 开始定义语法,然后继续?)?将来这可能也需要使用 XBAP 和 WPF 运行,所以这也是我们需要考虑的事情,但在 dlr 和 xbap 上还没有看到太多。谢谢,希望这一切都有意义。
Lua 不是一种选择,因为它与他们已经习惯的不同。
Ralf,它是被动的,老实说,结果应该返回给用户的时间范围可能是 1/100 秒,一直到 2 周或一个月(非常复杂的数学函数) .
基本上,他们已经购买了一个系统,可以满足他们的一些需求,并包含一种自定义脚本语言,可以完成我上面提到的功能,他们不想学习新的,他们基本上只是想要我们复制它并添加功能。我想我会从 ANTRL 开始,然后从那里开始。
【问题讨论】:
-
任何需要超过几秒钟的事情都不应该使用本土语言来完成。如果您谈论的是一个月的加班时间,那么在挂钟时间内,用更快的语言培训用户然后让他们使用更慢的语言可能会更快。
标签: scripting xbap dynamic-language-runtime