問題タブ [context-free-grammar]
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.
random - 文脈自由文法からn個のステートメントを生成する
ですから、車輪の再発明をしないために、文脈自由言語(yaccなどによって生成されたものなど)からランダムステートメントを生成することについて、すでに何が行われているのかを知りたいと思います。これらの文法は主に構文解析用ですが、おそらく誰かがパーサーをテストするために何らかの世代を行ったのでしょうか。ありがとう
c++ - 標準の C++ 文法はありますか?
標準は公式の C++ 文法を指定していますか?
探しましたが、どこにもありませんでした。
また、どのカテゴリの文法に該当するかなど、C++ の文法について詳しく読みたいと思います。正しい方向に私を指すリンクは役に立ちます。
カテゴリ別に言うと
ここ
から撮影。
programming-languages - チョムスキー階層とプログラミング言語
プログラミング言語に関連するチョムスキー階層のいくつかの側面を学ぼうとしていますが、まだドラゴンブックを読まなければなりません。
ほとんどのプログラミング言語は文脈自由文法 (CFG) として解析できると読みました。計算能力に関しては、プッシュダウン型の非決定性オートマトンに匹敵します。私は正しいですか?
それが本当なら、チューリングが完了している無制限文法 (UG) を CFG がどのように保持できるのでしょうか? プログラミング言語がCFGで記述されていても、実際にはチューリングマシンを記述するために使用されているため、UGを介して質問しています。
それは、少なくとも 2 つの異なるレベルのコンピューティングによるものだと思います。1 つ目は CFG の解析であり、言語の構造 (表現?) に関連する構文に焦点を当て、もう 1 つはセマンティック (意味、解釈) に焦点を当てています。チューリングが完了しているプログラミング言語の機能に関連しています。繰り返しますが、これらの仮定は正しいですか?
compiler-construction - 以前はトークンとして定義されていなかった CFG プロダクションでの端末の認識
私は LL(1) パーサーのジェネレーターを作成しています。私の入力は CoCo/R 言語仕様です。その入力用のスキャナージェネレーターは既に持っています。次の仕様があるとします。
したがって、この文法によって生成されたパーサーが単語「1+1」を受け取った場合、それは受け入れられます。つまり、解析ツリーが見つかります。
私の質問は、文字「+」はトークンで定義されたことはありませんが、非終端の「式」に表示されます。生成された Scanner をどのように認識すればよいですか? それはトークンとして認識されません。
これは有効な入力ですか?この端末を TOKENS に追加してから、スキャナーがスキップするエラー ルーチンを検討する必要がありますか?
通常の言語仕様はこれをどのように処理しますか?
algorithm - LL(*) パーサーはどのように機能しますか?
インターネット上で、ANTLR などの LL(*) パーサーに関する完全な説明を見つけることができません。
LL(k) パーサーと LL(*) パーサーの違いと、柔軟性があるにもかかわらず、なぜ左再帰文法をサポートできないのか疑問に思っています。
python - Python での文脈自由文法の解析
文脈自由文法の解析を支援するために Python で使用できるツールは何ですか?
もちろん、自分で作成することは可能ですが、特定の CFG のパーサーを生成できる汎用ツールを探しています。
grammar - 文脈自由文法に関して=*>はどういう意味ですか?
私はコンパイラ理論に関するいくつかの本/オンラインリファレンスを読んでいて、特に現在のトピックが文脈自由文法である場合、その特定の演算子が時々現れるのを見続けています(ここで見られるように)。どういう意味ですか?同様に、それはどのように違います=>
か?
と区別する例を使った説明=>
が=*>
最も役立ちます。
context-free-grammar - 「任意の」文脈自由文法?
長年の崇拝者初めての質問者:)
私は文脈自由文法から決定論的有限状態オートマトンを導出するプログラムに取り組んでいます、そしてこれを行う方法を説明する私が割り当てられた論文は「任意の確率的文脈自由文法」を参照し続けますが、決して定義しませんPCFGに関連する「任意」の意味。「古いPCFG」という意味だと思いますが、「PCFG」とだけ言ってみませんか?
この用語は、いくつかのウィキペディアのエントリにも表示されます。CFGページの上部には、CFGに関連する恣意性への参照があります(「句は句内に任意に深くネストできます」)が、誰かがPCFGまたはPCFGのサブセットを任意として参照する理由は明確ではありません。 。
誰かが興味を持っている場合のために、論文はKlein and Manning(2001)によるParsingandHypergraphsです。私はまた、この用語に関連する他の2つの論文(任意の確率的文脈自由文法と経験的境界、理論モデル、およびペンツリーバンクのためのアジェンダベースのチャートパーサ)を読んでいますが、この用語は広範に使用されていますが、説明はありませんまた。
grammar - あいまいな文法を明確な文法に変換する
あいまいな文法から明確な文法がどのように派生するのか理解できませんでしたか? サイトの例を考えてみましょう: Example . 文法がどのように派生したかは、私を混乱させます。
誰でも私を案内してもらえますか?
c++ - VB.NETからC++への変数とループの変換?
変数とループの宣言をVB.NETからC++に変換するための利用可能なツールはありますか?