3

我正在寻找一种用于青少年代码俱乐部的教育工具。

我的最终目标是生成一个基于规则的非图形 DSL(以及随附的 IDE),以促进为在线游戏创建“机器人”。

不过现在,我只想使用一种已建立的语言来模拟 IDE。我在考虑 Prolog,因为我很熟悉它,它是基于规则的,但我并不太在意。

我在哪里:

  1. 我已经看到了几个我可以使用的很好的代码编辑组件。
  2. 我看过Prolog.Net,我认为它可以用来做繁重的工作

我需要知道的:

  • 如何运行在运行时输入到文本框中的脚本?

如果重要的话,我通常在 Visual Studio 中使用 C#。

4

2 回答 2

1

你看过GOLD Parser吗?大约一年前,我在一个项目中使用了它(为用户创建了一个 DSL 以定义自定义业务规则),它满足了我的需求。你可以用它定义你自己的语法。

于 2012-05-22T13:17:18.023 回答
0

Visual Studio 本身是一个相当不错的代码编辑组件(您甚至可以将它与您的包一起提供,请参阅 参考资料Isolated Shell)。为它实现语言扩展相对容易。解析 Prolog 是微不足道的,即使使用 ad hoc 解析器,您也不必使用任何重量级的解析器生成器。

如果您要实现自己的 Prolog 或基于 Prolog 的语言,请阅读这篇精彩的教程:http ://wambook.sourceforge.net/

于 2012-05-23T10:09:24.957 回答