問題タブ [lr]

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.

0 投票する
4 に答える
4716 参照

parsing - パーサージェネレーターを書くためのオンラインリソース

私は教育目的でパーサー ジェネレーターを作成したいと考えており、作成方法を説明するオンライン リソースやチュートリアルがあるかどうか疑問に思っていました。Jack Crenshaw の「Let's Build a Compiler」のようなものです。

LR(1) 文法のパーサー ジェネレーターを書きたいと思います。

アクションと goto テーブルの生成の背後にある理論については十分に理解していますが、それを実装するのに役立つリソースが必要です。

推奨言語は C/C++、Java ですが、他の言語でも構いません。

ありがとう。

0 投票する
9 に答える
89654 参照

algorithm - LR、SLR、LALR パーサーの違いは何ですか?

LR、SLR、および LALR パーサーの実際の違いは何ですか? SLR と LALR が LR パーサーの一種であることは知っていますが、解析テーブルに関する限り、実際の違いは何ですか?

また、文法が LR、SLR、LALR のいずれであるかを示すにはどうすればよいでしょうか? LL 文法の場合、解析テーブルのどのセルにも複数の生成規則が含まれてはならないことを示す必要があります。LALR、SLR、および LR の同様のルールはありますか?

たとえば、文法が

LALR(1) ですが、SLR(1) ではありませんか?


EDIT(ybungalobill):LALRとLRの違いについて満足のいく答えが得られませんでした。そのため、LALR のテーブルはサイズが小さくなりますが、LR 文法のサブセットしか認識できません。LALRとLRの違いについて誰か詳しく教えてください。答えには LALR(1) と LR(1) で十分です。どちらも 1 トークンの先読みを使用し、どちらもテーブル駆動型です! それらはどのように違うのですか?

0 投票する
7 に答える
14359 参照

parsing - LL パーサーには LR パーサーよりも優れている点は何ですか?

今日のパーサー生成ツールで LL パーサーが相対的に人気を博しているのは、LR パーサーよりも LL パーサーが優れている点は何ですか?

Wikipediaによると、LR 解析は LL よりも優れているようです。

LR 構文解析は LL 構文解析よりも広い範囲の言語を処理でき、エラー報告にも優れています。つまり、入力が文法に準拠していない場合に構文エラーをできるだけ早く検出します。これは、バックトラッキングのために文法の別のブランチにエラー検出を延期する可能性のある LL(k) (またはさらに悪い場合は LL(*) パーサー) とは対照的であり、多くの場合、長い共通の接頭辞を使用した選言全体でエラーをローカライズするのが難しくなります。 .

注: これは宿題ではありません。Antlr が LL パーサー ジェネレーターであることを知ったときは驚きました (名前に「LR」が含まれているにもかかわらず!)。

0 投票する
2 に答える
676 参照

parsing - 文法があいまいな場合は、センテンスフォームごとに1つのハンドルが存在します。

削減を行うことができる2つのプロダクションがあります。必要に応じて優先順位と関連付けを与えた後、ハンドルは1つだけになります。したがって、このステートメントは本当ですか?

0 投票する
1 に答える
3356 参照

compiler-construction - すべてのLR(0)文法はSLR(1)ですが、その逆は必ずしも真である必要はありません。なぜですか?

すべてのLR(0)文法はSLR(1)ですが、その逆は必ずしも真である必要はありません。なぜですか?

0 投票する
1 に答える
7275 参照

compiler-construction - すべてのLL(1)文法もLR(1)ですか?

すべてのLL(1)文法もLR(1)ですか?

0 投票する
4 に答える
1312 参照

parsing - 手動パーサーの作成

パーサーを手動で作成する必要があります。LL(*) と LR のどちらかを選択できません (Earley を試してみてはいかがでしょうか?)。LL の文法はかなり難しいので、ボトムアップ解析を使用する必要がありますか?

0 投票する
2 に答える
4990 参照

load-testing - LRカスタムログファイル:ジェネレーターマシンからそれらを取得するにはどうすればよいですか?

結果をデータログファイルに書き込むVUGenCテストがあるとします。つまり、初期化時に作成(または追加)され、メインアクションで書き込まれ、シャットダウン時に閉じられるファイルに、処理されたIDなどが一覧表示されます。

次に、そのファイルのすべての仮想ユーザーのコピーを含むコントローラー上の統合ディレクトリ構造を見つけることができるLR機能があるかどうか疑問に思います。

私が見る限り、すべての仮想ユーザーインスタンスは、一時的な場所にあるテストディレクトリ構造の1つの共通コピーを使用します。したがって、a)カスタムログファイルの名前にVUser IDを含める必要があります。また、b)シナリオの実行後に、負荷ジェネレーターから結果ファイルを手動で収集する必要があります。これは、不器用なプロセスです。

唯一の快適な代替手段は、処理されたすべてのID(またはその他)をVTS(HP仮想テーブルサーバー、フリーウェアのようです)に報告し、そこから取得することです。次に、追加のコーディングを行う必要があります。VUgen / LRのそのような機能を誰も見逃したことがないということでしょうか?

この質問は必ずしもコードに関連していないので、これがあまり話題から外れていないことを願っています。

0 投票する
1 に答える
1105 参照

qtp - QTP LoadAndRunAction-呼び出し元の実行結果の呼び出し先部分からのトランザクション時間?

を使用して別のテストAからアクションXを呼び出す場合LoadAndRunAction、呼び出されたアクションで収集されたトランザクション時間は正しく報告されますか?

つまり、そのような呼び出し元スクリプトAをLoadRunnerシナリオに挿入した場合、LoadRunnerの結果レポートには、テストAで測定されたトランザクション時間とアクションXの両方が含まれますか?

正直なところ、私は怠惰すぎてこのアドホックをテストできないので、ただ尋ねています。

背景: QTPスクリプトを使用してGUIユーザーアクティビティをシミュレートするLRシナリオがいくつかあります。これらのQTPスクリプトは非常に大きく、すべての負荷ジェネレーターに何度もデプロイされます。アイデアは、大きなQTPテストを手動で一度展開し、大きなテストを呼び出すコンパクトなQTPテストを作成し、そのコンパクトなテストをLRシナリオに挿入することです。

0 投票する
2 に答える
205 参照

parsing - パーサーを書いてみる

Shunting Yard (SY) アルゴリズムを使用して構文を解析しようとしています。構文には次のコマンドが含まれます (これらは他にもたくさんあります!)

基本的に、setxy は関数ですが、関数の引数セパレーターは必要ありません。これにより、括弧と関数引数の区切り記号がないため、SY を介して実行することが非常に困難 (不可能?) になります。

SY を使用して、括弧なし/関数引数セパレーターなしの関数を解析できるかどうか、または別の解析アルゴリズムに進む必要があるかどうか、考えはありますか? もしそうなら、あなたはどちらをお勧めしますか?

ありがとう!DJS22