コンテンツへスキップ
uencoder

Parser

パーサーは、文法規則に従ってトークン列からAST(抽象構文木)を構築する。トップダウン(再帰下降/LL)とボトムアップ(LR/LALR)の二系統がある。

目的

トークンを構文木に構造化する。コンパイラと解析ツールの核心である。

メカニズム

LL(k)は左から右へ最左導出を行い、kトークン先読みする。LR(k)は左から右へ最右導出を行う。再帰下降は手書きで、非終端記号ごとに1つの関数を書く。PEGは順序付き選択とバックトラックを使う。

ユースケース

  • コンパイラの実装
  • データフォーマットの解析
  • DSLの構文解析

関連ツール

References