問題タブ [ocamllex]
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.
compiler-construction - ソースコードの位置情報をフロントエンドに追加する
特定の言語のプログラムのフロントエンドを含む静的アナライザーを作成しています。
フロントエンドはプログラムから AST を生成することに成功し、その上でアナライザーが適切に動作します: プログラムが (特定のプロパティに対して) 正しいことを証明するか、ステートメントまたは式に対してエラーを発生させます。
エラーの場合は、エラーメッセージを明示したいと思います。したがって、エラーが発生したステートメントまたは式localisation
のソース コードに正確なコードを追加したいと考えています。見せるのline number
はもういい、見せるのrow number
はもっといい…
これを行うためにフロントエンドを変更する方法を誰か教えてもらえますか? または、勉強できるドキュメントはありますか?
(最初に AST の型を変更する必要があると思いますが、loc
すべてに追加する必要がありますか?)
ocaml - より大きなレキシコンのために ocamllex を展開します
より多くのキーワードで ocammlex を動作させる方法はありますか? 私はドイツ語用のインタープリターとパーサーを作成しました。これは、言語分析のためにドイツ語のテキストをラテックス画像に「コンパイル」します。それは本当にうまく機能し、言語学の世界では本当に新しいものです。ocamllex や menhir などのツールをそのような目的で悪用できることを、ocaml のすべての開発者に感謝します。しかし、すぐに辞書のサイズによる ocammlex-automaton の限界に到達します。
私はハッシュテーブルの解決策を知っています。それが今後の問題を解決するかどうかはまだ試していませんが、ocamllex-source-codeの制限整数などのタイプを簡単に変更できる場合、プログラムコードを変更せずに誤用できることを誰かが知っていますか? ? 私の意見では、自動化のサイズに関するこのエラーは不必要にばかげており、さらに悪用するには扱いにくいので、質問したいと思います。
ありがとう、良い一日を。
regex - OCaml スキャナで、負の整数の正規表現が機能しないのはなぜですか?
次の ocamllex コードがあります。
これはうまくいきます!
しかし、INTEGER の + および - 記号を許可したい分、エラーが発生します。
エラーは次のとおりです。
面白いことに、私の .ml ファイルでは "float_of_string" を使用していますが、どこにも "int_of_string" を使用していません。
regex - OCamlで「match with」と正規表現を使用して文字列を一致させるにはどうすればよいですか?
私の OCaml .ml コードは次のようになります。
上記のコードが機能しないのはなぜですか? どうすれば動作させることができますか?
編集:
多くの解析を行う必要はありません。だから、OCamlexファイルではなく、OCaml .mlファイルに残してほしい