这是我第一次真正尝试实现领域特定语言。
我知道语言语法和抽象语法树的基础知识,但是我之前在实现它们时并没有动手。
我想构建一种小语言、简单的变量/数组和条件语句。我想通过我用 C# 构建的解释器来解释和执行用户输入的代码。在精神上与 PHP 非常相似,但更简单。
我搜索,我变得困惑。
我发现具有良好 C# 支持的最佳解析器生成器是 Gold 和 Irony。我也找到了 ANTLR,但我看到太多人抱怨 C# 支持的问题。此外,这三个似乎缺乏良好的文档。
我主要担心的是开始使用其中一个,然后发现它不能用于该任务,要么是因为缺乏良好的 C# 支持,要么是因为缺乏良好的文档或其他原因。我想要一些我可以“自信地”开始工作的东西,让自己在项目中开始。
任何人都可以帮我挑选一些可以很好地完成工作并保证与 C# 一起工作的东西吗?