問題タブ [camlp4]

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 投票する
1 に答える
1519 参照

ocaml - OCaml AST を OCaml コードとして出力する

camlp4 の引用を含むこのコードがあります。

これを で実行するcamlp4ofと、次のようになります。

私の質問はこれです、生成された ocaml コードを印刷する方法はありますか? コードを表示するには、どのcamlp4ofコマンドまたはオプションを使用すればよいですか? 上記の例から私が期待することは次のとおりです。

それは可能ですか?その理由は、生成された ocaml コードがどのように見えるかを確認するためにデバッグを行いたいからです。

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

functional-programming - `[< >]` は OCaml で何を意味しますか?

私はいくつかのソースコードを見てきました

[< >]中身はわかりますか?この種の兆候についてグーグルで検索するのは難しすぎます。

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

ocaml - ocamlbuild を使用して Camlp4 で OCaml 構文拡張を使用する

camlp4 パーサーでderiving-ocsigen構文拡張を使用すると問題が発生します。私のパーサーは呼び出されますpa_debug.ml

タグファイルは次のとおりです。

でコンパイルすると

次のエラーが表示されます。

このコード スニペットの 2 行目でエラーが発生します。

コードでは、派生の構文を引用符で使用するように入力しています。しかし、プリプロセッサは引用符内の「<」と「>」比較演算子の存在を理解していないようです。Show.show<int>別のファイルで引用符なしで構文を使用すると、エラーなしでコンパイルされます。

問題を解決するための解決策を見てきました-pp overrides the effect of -syntaxが、理解できません。誰かが私にそれを説明したり、それを修正する他の方法を提案したりできますか?

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

ocaml - camlp4 構文拡張、パーサー エラー

型の定義を可能にする構文拡張を作成しました

json ファイルから直接レコード値を作成できるようにします。構文拡張は、モジュールとそのために必要な関数を挿入します。ここまでは問題ありません。構文拡張機能は、私が望んでいたことを正確に実行します。

コード内の他の場所 (つまり、関数パラメーター) で「yjson」を使用したい場合、問題が発生し始めます。

ここで私が試したこと:

ここで、「yjson」を関数パラメーターとして使用すると発生するエラー

ここで何が起こっているのかよくわかりません。ルールが一致していないように見えるのに、解析エラーが発生するのはなぜですか?

0 投票する
0 に答える
418 参照

parsing - OCaml パーサーと文法の構造

私は、構文が次のような小さな言語のパーサーを開発しています。

これが私がOcaml camlp4で書いたコードです

残念ながら、パーサーは次のような文字列を解析しません

WAIT コンストラクトのルールは、最初の引数として proc を想定しているためです。

どうすればこれを修正できますか?

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

ocaml - Old Active Networking Language PLAN のインストール

誰かがこれを解釈するのを手伝ってもらえますか? PLAN (アクティブ ネットワーク用のパケット言語) をインストールしようとしています。Mac OS X 10.8.4 の端末から: