ツールの実例1: Flex

  • Flex = 状態遷移コンパイラ
  • 状態遷移を正規表現で記述したものをコンパクトな遷移表に変換
  • 効率の良いCコードを生成
       %%
       ka     { printf("か"); }
       ki     { printf("き"); }
       kya    { printf("きゃ"); }
       ...
     
  • → 状態遷移関数zztrans(入力文字, 遷移機械番号)と遷移表を生成