函数式编程中的非递归预测表驱动 LL(1) 解析器
我想知道在函数式编程中构建非递归预测表驱动的 LL(1) 解析器的最佳方法是什么:在 Haskell 或 OCaML 中进行手动编码,或者是否存在可以帮助我完成此…
如何判断一个文法是LL(1)、LR(0)还是SLR(1)?
如何识别文法是 LL(1)、LR(0) 还是 SLR(1)? 任何人都可以使用这个例子或任何其他例子来解释它吗? X → Yz |一个 Y → bZ | ε Z → ε …
Antlr 语法中的赋值表达式
我正在尝试扩展 Tiny Language 的语法 将赋值视为表达式。 是有效的 a = b = 1; // -> a = (b = 1) a = 2 * (b = 1); // contrived but valid a = 1 =…
为什么所有 LL(1) 文法都是 LR(1)?
众所周知,任何 LL(1) 语法也是 LR(1),但我似乎无法在任何地方找到严格的证明。我听过一些对该证明的高级概述(例如,由于 LL(1) 语法一次仅根据一个…
LL 解析器比 LR 解析器有什么优势?
LL 解析器相对于 LR 解析器有哪些优势,以保证它们在当今的解析器生成器工具中相对受欢迎? 根据维基百科,LR 解析似乎比 LL 具有优势: LR解析比LL解…
自上而下的解析器希望在“代码”中有像样的左递归案例。
大家好,Stack over Flow 成员。 我正在学习编译器课程。 我确实理解自顶向下解析器应该避免左递归,而转变为右递归方式。 问题是, a)我是否正确理…
解析中 FIRST 和 FOLLOW 集的用途是什么?
什么是 FIRST 和 FOLLOW 集?它们在解析中有何用途? 它们用于自上而下还是自下而上的解析器? 任何人都可以向我解释以下一组语法规则的第一组和后续…
使用 ANTLR 解析 Markdown 块引用
这是困扰我一段时间的事情。如何使用 ANTLR 将以下文本解析为 HTML?我似乎根本无法理解这个问题。 有什么想法吗? Markdown: > first line > second…
- 共 1 页
- 1