代码之家  ›  专栏  ›  技术社区  ›  user64718

实时脚本语言+MS-DLR?

  •  1
  • user64718  · 技术社区  · 15 年前

    首先我应该让你们知道我在做什么。我正在处理的项目有一个需要构建自定义脚本系统的要求。这将由使用应用程序的非程序员使用,并且应该尽可能接近自然语言。一个例子是,如果用户需要运行自定义模拟并打印输出,那么他们编写的代码将需要看起来像

    变量输入2为20;

    变量条件1为真; 如果条件1,则绘制(值1);

    可能没什么意义,但这只是一个例子。AVERAGE和PLOT是我们想要定义的函数,它们不应该被允许改变它们,甚至不能真正看到它们是如何工作的。DLR有这种可能吗?如果不是,我们还有什么其他的选择(从ANTRL开始定义语法,然后继续?)?在未来,这可能也需要使用XBAP和WPF来运行,因此这也是我们需要考虑的问题,但在dlr&XBAP上还没有看到太多。谢谢,希望这一切都有意义。


    Ralf,它将是反应性的,老实说,当结果返回给用户的时间范围可能是1/100秒,一直到2周或一个月(非常复杂的数学函数)。

    基本上,他们已经有了一个系统,他们购买了一些他们需要的,包括一个自定义脚本语言,做我上面提到的,他们不想学习一个新的,他们基本上只想我们复制它和添加功能。我想我先从安特尔开始,然后从那里开始。

    5 回复  |  直到 15 年前
        1
  •  3
  •   Javier    15 年前

    Lua

    它体积小,速度快,易于嵌入,可移植,可扩展,有趣!

        2
  •  1
  •   ralf    15 年前
        3
  •  1
  •   Brian Lyttle    15 年前

    我相信理论上你可以使用DLR,但我不确定XBAP是否支持(部分可信?)脚本。

    如果您托管DLR,您将很快能够利用IronRuby或IronPython脚本。在创建自己的语言实现时,您需要查看这些实现。如果你把你的问题发到 IronPython mailing list 我相信你会得到一个关于XBAP场景的更好的回复,那里的一些开发人员创建了 ToyScript .

        4
  •  0
  •   ralf    15 年前

    你想满足什么样的实时性要求?模拟是否为硬实时模拟(某种硬件在环模拟==>截止时间小于1/1000秒)? 或者您希望脚本系统对用户输入是“反应性的”=>1/10就足够了。

        5
  •  0
  •   BCS    15 年前

    首先我认为定义你自己的语言是

    • 主要是因为你能为程序员带来最大的生产力提升 非程序员是开发工具。你(和我们其他99.9%的人)不会写出比他们更好的工具。
    • 语言设计是 坚硬的 .
    • 语言支持和文档,也很难

    我建议寻找一个预先构建的解决方案。如果你能找到一种可以锁定某些功能的语言,那将是一个很好的起点。我第一个想到的就是MatLab。

    最后,去掉自然语言部分,BASIC,COBOL和 YA-TDWTF-Lang 所有的努力都失败了。


    全面披露:我在一家正在开发通用领域专用语言“系统”的公司工作。它的目标是数据输入/文本输出应用程序,所以它不是一个合适的,它还没有测试。结果是我有点知识渊博和偏见。