lalr

    3

    2答えて

    私はこれまでしばらくの間これに固執してきました。 が好き:として私はシンプルなものを解析したい単語1ワード2 ... wordNは嫌い:単語1 WORD2 .. wordN 私はレモン+フレックスを使用しています。現時点で私の文法は次のようになっています: %left LIKES MOODS FROM HATES INFO. %syntax_error { std::cout <<

    5

    2答えて

    LALR(2)は、(LALR(1)のような特別なルールなしで)自然にぶら下がったelseケースを自然に処理できますか? おかげ

    6

    5答えて

    私はYACC(実際はBison)に文法を書いていますが、シフト/リダクションの問題があります。これは、後置インクリメントおよびデクリメント演算子をインクルードすることによって発生します。ここでは文法のトリムダウンバージョンです: %token NUMBER ID INC DEC %left '+' '-' %left '*' '/' %right PREINC %left POS

    1

    1答えて

    私はBisonを使ってパーサを生成しようとしています。文法はうまくいきますが、私はその行動に素早く問題を抱えています。ここに簡単なサンプルがあります: statements : statement | statements statement; 私の知る限り、これはかなり普通のことです。私が持っている質問は、最初に導き出されたものです。私は statement statement stat

    -2

    1答えて

    私自身のカスタムパーサーを作成している場合、再帰的なアセンブラを作成しているかどうかをどのように知ることができますか?私はLALR構文解析のO(n)複雑さに興味があります(すでにLALR文法を持っています)。後で、代わりにLL構文解析プログラムを書いたことを知りたくありません。 編集:自動テーブル駆動パーサとカップルが単純な例の再帰パーサーを生成しましたが、手作業で構築するもののように遠く離れてい

    1

    1答えて

    Bisonコードでは、いくつかのシフト/リダクションの競合が予想され、通常のC文法ではif/elseが生成されることがわかります。しかし、私は他のシフト/リダクションの競合を生成する文法を持っています。これは私の文法に深刻な問題の兆候ですか?私は、各競合を捜す時間を費やして、それを解決するか、正当性を検証しようとするべきでしょうか?私は通常のLALRパーサーを使用しています。 編集: ここに私の文

    1

    1答えて

    私は最近、Java CUPを使用するコードの作業を担当しています。誰もまだそれを使用していますか?私はそれにいくつかの小さなリソースを見つけましたが、それはメインサイトに多くの文書がないように見えます、Java Cup Website。メーリングリストやユーザーがいる場合は、知りたいと思っています。ところで、私はミュンヘンの人々によって維持されている新しいエンジンを使用することはできません、私はバ

    3

    1答えて

    私のバイソン文法に問題があります。シフト/リダクションのペアがあり、6回のリダクション/リダクションがあります。問題は、パーサーが事前にトークンから選択する必要があることを知っておく必要があるため、縮小/縮小の競合がどのように起こるかを理解していないことです。 %token STRING_LITERAL %token INTEGER %token FLOAT %token CHARACTER

    2

    1答えて

    文脈のない言語、つまりContext Free Artを解析しようとしています。私は、YACCのようなJS LALR(1)パーサジェネレータJSCCを使って、Javascriptでそのパーサを作成しました。 次のCFA(Context Free Art)コードの例を見てください。このコードは有効なCFAです。 上記のAおよびsに注目してください。 sはCIRCLEをスケールするコマンドですが、Aは

    8

    5答えて

    .NET用のyacc/bisonタイプのLALRパーサジェネレータはありますか?