【问题标题】:Which Parser: EBNF, Custom, Parser Combinator (and their derivatives)?哪个解析器:EBNF、自定义、解析器组合器(及其衍生工具)?
【发布时间】:2011-05-20 04:19:01
【问题描述】:

我之前开发过自定义解析器,玩过 bnf 驱动的解析器,简要介绍了自己解析器组合器,并阅读了解析器组合器的派生类。

我的问题相当广泛,您如何确定哪种策略/技术是正确的?显然,它有实用的元素,即如果您只知道自定义解析器并且时间对您不利,那么您的选择可能是有限的,或者如果语言(和社区)不提供工具/支持并且您最终会拥有自己编写基础架构(这当然是可能的),但原则上是否有任何关于解析策略/技术本身的“经验法则”有助于为决策提供信息。

TIA

西蒙

【问题讨论】:

    标签: parsing


    【解决方案1】:

    我会推荐以下内容:

    1. 检查您的目标语言是否可以使用 LR(1) 语法进行有效描述。
    2. 如果是,则使用多种工具之一,例如 YACC。这些工具很不错,您需要找到不想使用它们的原因。
    3. 如果没有,请查找特定书籍或编写自己的解析器。

    【讨论】:

      猜你喜欢
      • 2010-10-06
      • 2012-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多