構文

構文
開発者インリア
タイプジェネレータ
ライセンスセシル
Webサイトsourcesup .renater .fr /プロジェクト/構文

コンピュータサイエンスにおいて、SYNTAXは、あらゆる種類の文脈自由文法(CFG)および一部の文脈文法クラスに対して、決定論的および非決定論的な語彙解析器および構文解析器(パーサー)を生成するために使用されるシステムです。フランスINRIAで数十年にわたり開発され、主にPierre Boullierによって開発されましたが、2007年以降はフリーソフトウェアとなりました。SYNTAXはCeCILLライセンスに基づいて配布されています。

文脈自由構文解析

SYNTAX は、ほとんどのクラスの決定論的(一義的)文法(LRLALR、 RLR )および一般的な文脈自由文法を処理します。決定論的バージョンは操作コンテキスト(例:Ada [ 1 ] )で使用されており、現在はコンパイルのドメインでも使用されています。[ 2 ]非決定論的機能には、自然言語処理に使用される Earley パーサージェネレーターが含まれます。[ 3 ] SYNTAX によって生成されたパーサーには、強力なエラー回復メカニズムが含まれており、抽象ツリーまたは共有解析フォレストでセマンティックアクションと属性評価を実行できます。

文脈解析

SYNTAXの現在のバージョン(バージョン6.0ベータ)には、自然言語処理やバイオインフォマティクスに使用される他の形式主義用のパーサージェネレータも含まれています。これらの形式主義は、文脈依存形式主義(TAG、RCG)、または文脈自由文法に基づき、特に自然言語処理向けに属性評価によって拡張された形式主義(LFG)です。

エラー回復

SYNTAXの優れた機能( Lex / Yaccと比較して)は、余分な文字やトークンを削除したり、不足している文字やトークンを挿入したり、文字やトークンを並べ替えたりすることで、字句エラーや構文エラーから自動的に回復する組み込みアルゴリズム[4 ]です。このアルゴリズムにはデフォルトの動作があり、字句解析器とパーサーが構築されている言語に合わせてカスタムの回復ルールセットを提供することで変更できます。

参考文献

  1. ^ ADA言語用の最初のツール・トランスレータは、 ADAの歴史に関するこのページで回想されているように、ピエール・ブーリエらによってSYNTAXで開発されました。ピエール・ブーリエとクヌート・リプケンも参照してください。「メタコンパイル手法に従ったAdaコンパイラの構築」。Séminaires Langages et Traducteurs 1978-1981、99-140ページ。INRIA、ロッケンクール、フランス、1981年。
  2. ^例えば、 INRIAのVASYチームとCONVECSチームによる、特にCADPTraianの開発。
  3. ^例えば、この論文で最初のバージョンについて説明されている SxLFG パーサーなど。
  4. ^ピエール・ブーリエとマーティン・ジュールダン.語彙・構文解析のための新しいエラー修復・回復方式. コンピュータプログラミング科学9(3):271-286 (1987).