Hasty Briefsbeta

双语

Inverse Parentheses

5 months ago
  • #programming
  • #parsing
  • #parentheses
  • 编程语言使用圆括号对操作数进行分组,但不会用于取消分组。
  • 在语言语法中,用圆括号分组是直截了当的,但反分组则更为复杂。
  • Python的语法隐式使用大括号,由分词器处理缩进和圆括号嵌套。
  • 通过分词器技巧可以跟踪嵌套深度,并为每个标记生成一个“友好度”分数来处理反分组。
  • 优先级爬升解析器可以管理无限多的优先级级别,因此适合这种方法。
  • 如果增加而非减少友好度,该实现也允许进行常规解析。
  • 未来的工作包括探索在反分组解析器中双重圆括号表达式和对合运算。
  • 文章还幽默地讨论了“parentheses”(圆括号)缺乏令人满意的单数形式的问题。