字句解析器ジェネレータとの関係とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 字句解析器ジェネレータとの関係の意味・解説 

字句解析器ジェネレータとの関係

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/16 05:20 UTC 版)

Yacc」の記事における「字句解析器ジェネレータとの関係」の解説

Yacc には構文解析器機能しかないが、特定の名前の未実装関数 yylex を呼んでトークン毎度要求する。この字句解析器関数 yylex を作って動的にトークン生成して1回呼ばれるごとに1個のトークン種類戻り値返してやればよい。さらにそれが数値文字列のように意味値をもつトークンのときは、意味値も変数 yylval にセットして同時に返すユーザはこの字句解析器関数 yylex の処理を実装することになる。 字句解析器(A-1)のほうも、合理的な開発目的とし、Yacc似た規則定義を与えれば字句解析器自動生成してくれる便利な道具として、LexFlexなどのレキシカルアナライザジェネレータがある。 そこで Lex などの字句解析器生成ツール利用するなら、それに字句文法定義を与えて生成させたC言語ソースである字句解析器が yylex 関数含んでいるので、CコンパイルYacc 出力一緒にそれをリンクして組み込む。これにより、ソーステキストの字句解析構文解析両方行って規則アクション部(あるいはさらにそれに呼ばれるユーザ作成C言語関数)に書かれ計算結果や、コンパイル生成使われる抽象構文木構造体データ、あるいは各種表示出力される変換プログラム完成するGNUプロジェクトでは、Flex という名前で機能提供している。 ちなみにYacc の上機能をもちやや方式異なJava 言語向けジェネレータ JavaCC では、両方の定義・処理機能併せもっているJava向けではまた、字句解析器ジェネレータJFlexと構文解析器ジェネレータCUPとを組みあわせて用いることも行われている YaccLex はよく似た文法定義を持つ。組み使い、組で解説することがあるLexYacc機能IEEE POSIX 1003.1-2008(かつては1003.2)で標準化している。

※この「字句解析器ジェネレータとの関係」の解説は、「Yacc」の解説の一部です。
「字句解析器ジェネレータとの関係」を含む「Yacc」の記事については、「Yacc」の概要を参照ください。

ウィキペディア小見出し辞書の「字句解析器ジェネレータとの関係」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「字句解析器ジェネレータとの関係」の関連用語

1
8% |||||

字句解析器ジェネレータとの関係のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



字句解析器ジェネレータとの関係のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのYacc (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS