6

我们希望让人们能够在他们的帐户中添加一些逻辑(例如,给定一些参数,如何计算特定结果)。因此,从本质上讲,这相当于编写支持条件和表达式的简单业务规则。然而,挑战在于为他们提供一个简单的在线编辑器,他们可以在其中通过完全可视化的方式(最好是拖放 Expr-tree 节点——有点像 Y!管道)来创建逻辑。

有人知道可以让人们这样做的脚本/宏/域特定语言吗?挑战在于可视化编辑器,因为我们不希望投资开发 UI 来进行编辑。基本要求是:
1. 嵌入到另一种语言中,或安全运行(否reboot -n<JUNK-DANGEROUS-COMMAND> >> ~/.bashrc
2. 无需编码背景的用户即可轻松访问(不需要任何高级功能)
3. 最好有一个简单的基于 GUI 的编辑器来创建逻辑非开发人员可以访问的程序(有点像电子表格)
4. 生成编译时警告(无效代码)的能力会很好(类型安全?)
5. 能够在执行前嵌入一些解​​释器可用的数据(例如., name, birthday, amount)

有人试过做这样的事情并有任何想法吗?我查看了 Lua、Io、Python、Ruby 和许多其他工具,但挑战本质上是我不认为非程序员能够理解这么多代码。如果可以轻松开发编辑器,可以通过“元编程”添加一些东西来表示 Ruby 也很好!

4

4 回答 4

2

事实上,微软正在开发Oslo,这正合您的胃口。 Chris Sells最近写了很多关于它的文章。

它被设计成一种创作 DSL 的方式,也可以使用名为 Quadrant 的图形工具直观地创作这些模型。听起来与您正在寻找的非常相似。

开源方面,我认为 Ruby 可以接近,你可以看看 _whytheluckystiff 的 Try Ruby 或Hackety

于 2008-11-14T20:12:15.150 回答
0

另一方面,按照我的Clive工具编写一些简单的东西,如超文本应用程序 (HTA)——当然假设是 Windows 。博客上的文章没有提到 HTA 版本,但基本上我可以将 VBScript-ish 代码输入到一个文本区域并当场解释它,输出到表单上的另一个文本区域。

使用 HTA 为您提供 HTML 的所有表单控制以及 DOM,您可以相当快地想出一些有趣的东西。

于 2008-11-15T13:09:35.783 回答
0

我认为您不会找到任何不太通用的东西,尤其是关于 GUI 编辑器。据我所知,没有通用工具能够自动与您的程序交互并能够从中查询数据并将脚本解释为您软件中的命令——如果有的话,我想要一份副本。不是轻率,但你必须做一些(可能很多)工作才能让它发挥作用。它可能会导致您编写自定义 DSL。

于 2008-11-14T13:28:07.320 回答
0

我会看看PowerShell。您可以以非常易读的方式显示用户想要编写脚本的所有活动。在 PowerShell 团队博客上有一些关于使用 PowerShell 创建 DSL的讨论,技术负责人 Bruce Payette 在他的 Manning 的 Windows PowerShell in Action 一书中谈到了这一点。

于 2008-11-14T22:34:03.053 回答