ブックマーク / yui-knk.hatenablog.com (1)

  • Ruby Parser開発日誌 (3) - かねこにっき

    前回のあらすじ Ruby Parser開発日誌 (2) - かねこにっき Error Recoveryについてまとめました。もう少し詳しくError Recoveryを説明したほうがいいと思ったので、今回は前回の内容を具体例を用いながら解説します。 最初にLR parserの仕組みについて説明し、その後Error Recoveryの仕組みについて説明します。 LR parserの仕組み 用語の解説 LR parserの仕組みの説明に入る前に、これから使う用語について簡単に説明します。 終端記号: Lexerが生み出す記号のことです。例えばRubyではkeyword_class ("class")という記号はLexerが生み出します。トークンと呼ぶこともあります。 非終端記号: Lexerが生み出さない記号です。かわりに生成規則によって定義されます。例えばprimaryという非終端記号はpr

    Ruby Parser開発日誌 (3) - かねこにっき
    toshikish
    toshikish 2023/01/12
  • 1