cost 247 ms
Antlr 間接左遞歸

[英]Antlr Indirect Left Recursion

我多次看到這個問題被問到,也看到人們“解決”了它……但它要么讓我感到困惑,要么沒有解決我的具體情況: 大致情況如下: expression_statement中以表達式開頭的所有內容都使用我不知道如何修復的間接左遞歸,同時仍然能夠將這些語法用作語句,因此它們可以在塊中使用(可以做類似Print(" ...

如何從缺少 beta 的語法中刪除左遞歸?

[英]How to remove left recursion from a grammar with beta missing?

這是問題所在: A -> A*B | 一個+ CDE | 阿布所有作品都以A開頭。我想這滿足規則嗎? 如您所見,它缺少測試版。 如何對其執行左遞歸? 甚至可以對其執行左遞歸嗎? 到目前為止我學到的是,如果它是這樣的: A -> A*B | 一個+ CDE | 阿布 | b 然后我會 ...

了解是什么讓 antlr 中的規則左遞歸

[英]Understanding what makes a rule left-recursive in antlr

當 antlr 中的規則是左遞歸或非左遞歸時,我一直在試錯以從直觀的角度弄清楚。 例如,這個( 移除左遞歸)在理論上是左遞歸的,但在 Antlr 中有效: 那么是什么使規則左遞歸和 antlr4 中的問題,以及顯示這一點的最簡單示例(在實際程序中)是什么? 我正在嘗試練習刪除左遞歸產生式,但我什至 ...

如何使用 FParsec 解析遞歸左語法規則?

[英]How to parse a recursive left syntax rule with FParsec?

我通常將 FParsec 用於 LL 語法,但有時會發生在整個語法中只有一個元素需要左遞歸解析(因此語法不再是 LL)。 目前我有這樣的情況,我有一個用 FParsec 實現的大型 LL 語法,但是一個小的語法元素困擾着我,因為它顯然無法正確解析。 有問題的語法元素是訪問數組索引à la F#,例 ...

如何編寫這個“表達式”PEG 語法,使其不是遞歸的,或者我可以使用 prec 爬升器?

[英]How do I write this `expression` PEG grammar so that it is not recursive, or so that I can use the prec climber?

我正在創建一個可靠的解析器,並且我正在使用 PEST 解析器來處理 rust。 我正在嘗試編寫expression的語法,但是有很多左遞歸的情況。 我在網上看過,知道你可以使用 prec 登山者,但我不太確定如何實現這一點。 通過按優先級編寫規則或使用 prec 爬升器來刪除左遞歸會更好嗎? 有人 ...

ANTLR4 中關於立即左遞歸的錯誤

[英]Error about Immediate left recursion in ANTLR4

我在 a.g4 文件中寫了以下語法: 如果我沒記錯的話,這個語法中只有立即左遞歸。但是有一個錯誤消息:“以下規則集是相互左遞歸的[expr]”。為什么? ...

ANTLR 中的左遞歸

[英]Left-recursion in ANTLR

stm和stmList給了我這個錯誤,似乎 ANTLR 將其視為可能的無限遞歸循環。 我怎樣才能避免它? 以下幾組規則是相互左遞歸的[stmList] ...

將上下文無關文法轉換為常規文法

[英]Converting a context free grammar into a regular grammar

E -> EAE | (五) | -E | ID A -> + | - | * | / 終端集是 {id, -,+,*,/},起始符號是 E。 我想將此語法轉換為常規語法。 我嘗試取消這個語法的左遞歸,我得到: E -> (E)X | -EX | idX A ...

如何制作沒有左遞歸的上下文無關語法以包含左遞歸(不改變語法的語言)?

[英]how to make a context free grammar with no left recursion to include a left recursion (without changing the language of the grammar)?

假設我們有一個上下文無關語法,如果它在 LL[1] 中,那么它只有右聯想,但是假設我想讓這個上下文無關語法有一個左聯想,那么它不會留在 LL[1] . (沒關系)我認為為了使上下文無關語法具有左關聯,我應該使其具有左遞歸? 有沒有一種方法可以在不改變語法語言的情況下將左遞歸包含在上下文無關語法中 ...

提取 excel 中的文本

[英]Extracting text in excel

我每天都會收到一些需要分開的短信。 我有數百行類似於下面的摘錄: 我需要從該文本中提取單個片段,因此對於單獨單元格中的每個片段,我的結果需要是日期、月份、公司、大小和價格。 在這種情況下,結果將是: 我正在努力解決的問題是一致性。 例如,一條線可能有FEB50-FEB40 、另一條FEB5-FEB4 ...

如何編寫一個將列表作為輸入的謂詞,並使用 Prolog 將此列表中的所有列表類型條目附加到新列表中?

[英]How do I write a predicate that takes as input a list, and appends all list-typed entries from this list to a new list using Prolog?

它應該以左遞歸的方式完成。 現在我們有這個: 但是它不斷給我這個錯誤: 例如,如果我會這樣查詢。 輸出應該是這樣的: 有人可以向我解釋我做錯了什么嗎? ...

ANTLR4 自和互左遞歸

[英]ANTLR4 self and mutual left-recursion

是否有一個簡單的轉換或解決方法可以在 ANTLR4 中完成這項工作? 也就是說, a和b是自左遞歸和互左遞歸,其他規則( c 、 d 、 p 、 q 、 r 、 s )只是簡單規則的占位符。 ...

從此語法中刪除間接左遞歸

[英]Removing indirect left recursion from this grammar

我試圖弄清楚如何從我的 Rust 端口的 Rust 解析器( https://github.com/kenaniah/ruby-parser/blob/master/ruby-parser/源代碼/解析器/表達式/邏輯.rs )。 語法看起來像: 我 go 如何將其轉換為刪除A和O中的遞歸? ...

從語法中刪除左遞歸和因式分解

[英]Removing Left recursion and factoring from a Grammar

我想問一個關於消除語法中的左分解和遞歸的問題。 我過去已經解決過這樣的問題,但是這個問題的語法看起來非常棘手,超出了我的理解范圍。 我個人認為第 2 行和第 4 行中存在左遞歸。但是,我無法很好地識別它以刪除提到的兩件事(尤其是在最后一行的數字 1-9 中)。 我將附上語法的圖片,因為粘貼它就像代碼 ...

左遞歸消除題

[英]Left recursion elimination questions

我正在研究刪除語法中的左遞歸。 (3個語法) 我試過這樣做,但我不確定我的答案。 第一個,我不知道該怎么做。 第二,第三個我認為它會失敗。 我的回答對嗎? 我該如何改變呢? 請有人詳細解釋一下。 ...

命題邏輯的解析器組合器

[英]Parser combinator for propositional logic

我想設計一個組合器來解析命題邏輯。 這是一個簡單的BNF : 問題在於語法是左遞歸的,這會導致無限循環:一個句子可以是一個復雜的句子,可以從一個句子開始,可以是一個復雜的句子,直到永遠。 這是導致此問題的示例句子: 是否有一種簡單的方法可以修復語法,使其適合於解析器組合器? ...

如何最好地解析 PEG 語法中的逗號分隔列表

[英]How best to parse a comma separate list in PEG grammar

我正在嘗試解析逗號分隔列表。 為簡化起見,我只使用數字。 這些表達式是有效的: (1, 4, 3) () (4) 我可以想到兩種方法來做到這一點,我想知道為什么失敗的例子不起作用。 我相信它是一個正確的 BNF,但我無法讓它作為 PEG 工作。 任何人都可以解釋為什么嗎? 我試圖更好地理解 P ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM