代码之家  ›  专栏  ›  技术社区  ›  Jonathan Leffler

是否有支持“选择首选项语法”的mks yacc的替代方法或非常类似的方法?[关闭]

  •  1
  • Jonathan Leffler  · 技术社区  · 16 年前

    mks yacc支持其网站调用的符号。” selection preference syntax “。它没有说明,但它由方括号中的一个标记组成,可以选择带一个插入符号,它表示需要遵循或不需要遵循其他规则:

    non_terminal:  TOKEN1 non_terminal2 TOKEN2 [TOKEN3]
    
    non_terminal:  TOKEN1 non_terminal2 TOKEN2 [^TOKEN3]
    

    (我不清楚括号内的项目是否可以是非终端项目。我看到的使用符号的代码总是使用一个标记或两个空格分隔的标记,而不是非终端。)

    是否有人知道在Unix或Linux计算机上运行的,最好以源代码格式提供相同支持(表示法可能不同-功能不能)的替代yacc兼容系统(最好是开源的)?

    (mks yacc在处理错误和调整错误行为方面也提供了一些灵活性。一种可以使用的方法是,当关键字被当作关键字处理时,在一个毫无意义的位置遇到它们时,将它们当作标识符处理。我能把它改造成 byacc -伯克利Yacc——但我还没有花足够的时间研究如何处理“选择偏好”。)


    参见: Has anyone used the "selection preference" mechanism provided by MKS Yacc?

    1 回复  |  直到 16 年前
        1
  •  1
  •   Jonathan Leffler    16 年前

    为了完整起见,因为我在答案中把这个链接到了您的其他版本,所以似乎有一个来自 Thinkage 打电话 YAY ,类似于yacc,支持选择器语法。他们在Kitchner,显然与MKS密切相关,但从网站上看,他们似乎也对MKS的文档负责,因此,如果所有其他都失败了,你可以打电话问他们这些选择偏好到底意味着什么。;-)