代码之家  ›  专栏  ›  技术社区  ›  ComedicChimera

编译器设计中的嵌套语法

  •  3
  • ComedicChimera  · 技术社区  · 7 年前

    这似乎是一个简单的问题,但我在任何地方都找不到很好的解释。如何处理嵌套语法(即引用其他语法的语法)例如

    S => Eb
    E => cA
    

    单独语法:

    A => d
    

    这可能吗?如果没有,如何处理这个问题。对于语法,如变量声明,是否需要简单地重写与主语法相关联的表达式语法,或者可以从中引用它们?如果是这样,那么如何将此功能正确地集成到LL(1)解析器中呢。

    谢谢

    1 回复  |  直到 7 年前
        1
  •  2
  •   Frank C.    7 年前

    我相信你们的问题是关于物理分离的,在这种情况下,你们可以把所有的东西合并在一起,形成一个完整的主语法。