7

我正在使用类似模板的编辑器创建 DSL,就像Alice中的规则系统一样。用户将能够从列表中选择关系以及应用关系的对象。这两个列表应该根据可接受的类型进行过滤——例如,如果关系“大于”,那么可用对象必须是实现“大于”的类型。

类似地,如果选择的对象与大于不可比较,则该关系不应出现在潜在关系列表中。我认为这个问题的核心是类型检查器,但我不确定将这种类型的逻辑合并到我的应用程序中的最佳方式。有人知道现有的 DSL 类型检查库吗?

我对开源和跨平台技术特别感兴趣。Java 可能是我们最终会使用的语言,但这不是固定的。

4

2 回答 2

2

您可能会研究Scintilla。它是 Notepad++ 使用的编辑组件,以及其他工具。它对自动完成有一些支持,虽然我自己没有尝试过使用它,所以我不确定它的效果如何。它是开源的,所以如果它不能满足你的需求,我认为你可以毫不费力地扩展它。

于 2008-09-19T21:52:35.120 回答
1

这可能在智能感知方面有所帮助 - CodeTextBox

于 2008-09-19T21:53:16.757 回答