parsing - 语法/自己编写的解析器?

标签 parsing grammar generator

我正在做一些涉及对某些事物使用不同语法的小项目,但有时这些语法非常简单,以至于使用解析器生成器可能有点矫枉过正。

现在,我什么时候应该使用手工解析器,什么时候应该使用解析器生成器?

谢谢,

威廉范多恩

最佳答案

除了“针对特定情况使用最简单的方法”之外,没有硬性答案。

我的经验是,解析器在其生命周期内往往会变得更加复杂,因此预先使用解析器生成器通常会有返回。即使语言没有变得更复杂,使用生成器也会迫使您创建语法的正式规范,这本身就很有值(value)。

缺点是其他程序员可能不知道如何使用生成器,因此其他人很难提供帮助,并且使您的项目依赖于该生成器。

关于parsing - 语法/自己编写的解析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2704883/

相关文章:

python - 有效地生成所有小于 N 的合数(及其因式分解)

parsing - h264 引用帧

ubuntu 的 C 程序解析器?

go - 为什么 `else if x := x + 1` 即使没有在 := 左侧定义新变量也不会编译失败

c++ - 提升精神: parse boolean expression and reduce to canonical normal form

python - 如果我们在生成器对象引发 'StopIteration' 异常之前停止迭代会发生什么

.net - 我应该推出我自己的 ParseInt32 版本吗?

java - 如何从字符串中取出数字并将它们放入 arrayList

Python赋值命令语法

testing - 使用 FsCheck 我在测试中得到不同的结果,一次 100% 通过,另一次出错