現在、ANTLRのWebサイトからPython 2.5のサンプルを使用しています。私は実際に文法が既に意味論を生成しているのかどうか疑問に思っています。もし存在しなければ、私は何をすることができますか、ANTLRで構文解析した後、Pythonのセマンティクスを生成するために、ANTLRはセマンティクスを提供しますか
答えて
言語のセマンティクスを生成するツールはありません。これは、自分で実装する必要があります。
これでPythonコードを解析できました。必要な処理を最初に行い、Pythonコードとして出力し、既存のPython言語の実装を使用して実行することができます。
ANTLRは構文解析を処理しますが、セマンティクスは処理しません。結局のところ、パーサー生成ツールです。セマンティクスを追加した場合は、完全なPython実装(ライブラリをモジュロ化する)ができます。
ANTLRでは、文法規則に関連するアクションの意味論を指定できます。単純なタスクの場合、これは便利ですが、大規模な文法の場合は、AST(抽象構文木)を生成するだけです。つまり、非常に長い文字列ではなく、プログラム内で処理する方が便利です。あなたが使用している例に含まれているかどうか、どのようにこのくらいの
は、あなたはできる、私は意味をするつもりですかに絶対に見当もつかないコード;-)
import_as_name :NAME(NAME NAME)? \t;これはセマンティクスのサンプルですか? – marchemike
これは構文規則であり、正しいプログラムがどのように形成されるかの記述です。セマンティクスは、 'import'ステートメントで言及されたモジュールを見つけ、そこから命令を読み始めるコードです。 –
- 1. XTextが提供しないANTLRの機能は何ですか?
- 2. 正しい移動セマンティクスを提供する
- 3. アプリケーションサーバーは、提供できるSpringを提供しますか?
- 4. SSLはポイントツーポイントセキュリティを提供しますか?
- 5. Nginxはwww.example.comを提供していませんがexample.comを提供します
- 6. コアデータアプリケーションのベースデータを提供しますか?
- 7. Androidは電話を提供します
- 8. Python SimpleHTTPServerはサブディレクトリを提供します
- 9. DjangoまたはBootstrpはSelectOneListBoxを提供していますか?
- 10. has_one:throughはbuild_associationを提供しません
- 11. AVCapturePhotoOutputはプレビューバッファを提供しません
- 12. 文法パーサの提案(ANTLR)
- 13. ActionLink()またはRouteLink()にIDを提供していますか?
- 14. Sqoop 2はSqoop 1が提供していないことを何に提供しますか?
- 15. PHPはSpinxクライアントAPIを提供するようにLucene Client APIを提供していますか?
- 16. Netbeans GlassfishはWebサービス上で404を提供しますが、JSPページは提供しません。
- 17. LinkedInはオフラインアクセス用のAPIを提供していますか?
- 18. Javaはタイムスタンプを提供していますか?..... DWR
- 19. ASP.NET JavascriptSerializerは不要なarray-within-arrayを提供しますか?
- 20. AWS SDKはイベントベースのアーキテクチャを提供しますか?
- 21. Sencha Touchはセキュリティモデルを提供していますか?
- 22. groovyはインクルードメカニズムを提供していますか?
- 23. JOSSOはユーザー管理自体を提供していますか?
- 24. サードパーティキャッシングソフトウェア - それらは何を提供していますか?
- 25. SQLは「ブロックレベルの暗号化」を提供していますか?
- 26. Firebaseアナリティクスはユーザのエリア/都市/州を提供しますか?
- 27. React NativeはダイアログのAPIを提供していますか?
- 28. OpenWrtはパケットフィルタAPIを提供していますか?
- 29. Pharoはテールコールの最適化を提供していますか?
- 30. Opaは代数的データ型を提供しますか?
を見ずに言うことはむしろ難しいです私が意味論を作るのに使うことができるどんな資源も示唆していますか? – marchemike
言語はPython Language Reference:http://docs.python.org/reference/で説明されています。Python言語の意味論を学ぶための最良の手段です。 –