.net - 任何具有测试功能的 BNF IDE

标签 .net language-design bnf parser-generator

我正在研究一种新语言,在编写语法时,我希望能够测试语法的完整性、冲突和类似性。我并不真正关心底层解析器生成器(但最好使用一个用于 .NET 的解析器)

因此,简短的功能列表将是:

  • 文本编辑器构建功能
  • 语法/语义错误报告
  • 冲突报告
  • 语法测试功能(即窗口
    以预期的语法编写代码
    以验证其正确性
    语法定义)

  • 一个名为 Irony 的 CodePlex 项目确实有一些与我要求的类似的东西,但不支持将语法编写为所需的 BNF。

    最佳答案

    我会推荐 ANTLR作为解析器生成器。它的功能非常完整,支持 C# 以及许多其他目标语言。

    对于 IDE,有一个名为 ANTLR IDE 的 Eclipse 插件。和一个名为 ANTLRWorks 的独立 IDE ,两者都运行良好。

    但是请注意,ANTLR 使用 LL(*) 算法而不是 LR(k) 算法。尽管如此,它还是非常好,ANTLRWorks 可以完成大部分必要的左分解。

    关于.net - 任何具有测试功能的 BNF IDE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2045382/

    相关文章:

    c# - 尝试使用 <list> 将对象放入数组时无法从 void 转换为模型

    .net - Win7任务栏上的应用程序图标有进度条吗?

    C++0x 实现猜测?

    java - 空的 if 语句

    .net - Docker-compose没有设置环境变量

    c# - 如何添加工具栏项 .net maui?

    python - 为什么 Python 决定不使用常量引用?

    c - 这是什么意思\?在 C 语法中转义?

    ANTLR,如何在ANTLR中转换BNF、EBNF数据?

    java - JAVA中的"threadsafe"修饰符?