问题标签 [ebnf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bnf - EBNF 冒号和分号的用法?
我不知道 BNF 或 EBNF 中的冒号是什么意思。它没有在互联网上的任何地方列出。不管怎样,我的教授决定把它放在作业中。我认为他将其与分号或其他东西混淆了。我仍然不确定分号是什么意思。这是一些上下文:
给定以下声明的 CFG(上下文无关语法):
给出定义标识符类型的属性语法(id 代表标识符)。
有人认为他们可以提供帮助吗?
c - c程序中的EBNF声明语法
我对编程有点陌生(好吧,非常新),我遇到了 Extended Backus Naur Form 或 EBNF,并决定尝试弄清楚如何使用它。不幸的是,尽管网上有大量关于 EBNF 工作原理的解释,但关于如何实际实施它的信息却很少。所以我用它用 C 语言做了一个简单的小程序,看看会发生什么。这是我写的:
马上我得到一个编译器错误(我正在使用代码块)说它需要在“:”之前有一个“=”,但我使用了一个“:”,因为我在网上阅读的所有内容似乎都表明“:”是正确的。此外,如果我将其更改为“=”,我会收到一个编译器错误,提示“混合”(和其他)没有类型或存储类。好吧,前面的“int”不起作用,“char”也没有意义,因为它是两者的混合体。
我也不确定声明是否应该在 main() 之前或里面。我最终把它放在了之前,因为我在网上读到的一件事似乎表明这是正确的。
顺便说一句,我发现绝对没有 C 语言中的在线示例可以遵循 - 这是否意味着我完全以错误的方式考虑 EBNF,并且根本不能像这样使用它?
任何帮助是极大的赞赏。
parsing - 如何为 EBNF 语法编写解析?
我收到一个任务来解析符合 EBNF 语法的文本。我可以使用任何工具/库吗?
lexer - Sable CC 解析器生成器的产品
它看起来很基本,但在过去的半个小时里,我不知道我们为什么说{zero}
或{one}
在以下作品中 {} 表示什么?
antlr - 从 ANTLR 生成 EBNF
有人知道从 ANTLR 生成 EBNF 的工具吗?ANTLR 已经接近 EBNF,但出于文档目的,我希望有一个干净的 EBNF 描述(中间没有代码)。
使用 antlrworks,这已经很好地获得了语法图:
但它希望有一个简单的文本描述、首选文本、tex、html、xml 或类似的。
language-design - 扩展的 Backus-Naur 形式的运算顺序
我正在为一种非常简单的规则语言创建一个正式的规范,非常简单。我想使用 EBNF,因为这是一个标准,但我不知道如何指定操作顺序。这是到目前为止的规范。
我的问题是我如何表明应该首先评估括号中的内容。所以像这样
这似乎是大多数语言的共同特征,但我的谷歌技能让我失望,我似乎找不到一个例子。
bison - 扩展 BNF 到 BNF 的翻译
我在 EBNF 表示法中有这个语法:
我想将其转换为 BNF 以在 Bison 中使用它,但我在此遇到 shift/reduce 错误:
我想我在此过程中误解了一些东西。有什么帮助吗?
谢谢
c - C 浮点文字 - 在 EBNF 中定义
我试图找出为 C 浮点文字编写 EBNF 描述的正确方法。
这是我坚持的一个问题。我不知道怎么写,因为 float 不只是一种类型吗?到目前为止,我认为它可能只是
float < literal >
但这似乎太简单了。
parsing - 如何在 BNF 中表示否定?
BNF 或 ABNF 是否支持否定。那就是排除集合的某些成员?我在它的语法中没有看到任何这样的否定运算符。
例如,假设所有字母数字字符串的S
集合不等于"foo"
What is the BNF for S
?
pdf - PDF 1.7 的语法。(BNF 或变体)
我正在寻找 PDF 1.7 的语法(BNF 或变体)
绝对不能用谷歌搜索