{"version":1,"pages":[{"id":"-Lou3DbgXW7JXfSdV-sI","title":"Introduction","pathname":"/decaf-book","siteSpaceId":"sitesp_4oBLm","description":""},{"id":"-Lou43vkku9IfnNwHb4a","title":"语言规范","pathname":"/decaf-book/spec","siteSpaceId":"sitesp_4oBLm","description":""},{"id":"-LpkwmdDRSkjKexp52QM","title":"Java 框架分阶段指导","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao","siteSpaceId":"sitesp_4oBLm","description":""},{"id":"-Lpweei0be0l5u9l_63y","title":"本章导引","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"}]},{"id":"-Lpweei1ACQRIiAmVwFH","title":"PA1-A：语法分析器的自动构造","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"}]},{"id":"-Lpweei2kIwnflHj0FHS","title":"阶段任务","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lpweei3KXPduV0aEryB","title":"词法分析","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lexer","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lpweei5pKYK7-zuJVvt","title":"抽象语法树","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/tree","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lpweei4PLIO1Zyq2Q0v","title":"文法分析","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/parser","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-LrD0sWnx7TYlqXq9fk1","title":"PA1-B：基于 LL(1) 的语法分析器半自动构造","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"}]},{"id":"-LrD0sWo0zti2WmFtsnG","title":"阶段任务","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-LrD0sWpzyw1vzFlGSoH","title":"LL(1) 文法分析","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/parser","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-LrD0sWqC8lzEtRAKIhS","title":"错误恢复","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/recovery","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-LsGr_X7Rz7XiU6or0Ay","title":"PA2：语义分析","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"}]},{"id":"-LsGr_X8b8EFLEfsLw1B","title":"阶段任务","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsGr_X9cpODZ5Z-7bKj","title":"类型、符号和作用域","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/datatype","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsGr_XAiDmUblObtwOT","title":"访问者模式","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/visitor","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsGr_XBQR95WyRbRQUL","title":"符号表构建","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/table","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsGr_XC27U9YgOEkw4l","title":"类型检查","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/typecheck","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-Lu8AFni-RGau89CJm06","title":"PA3：中间代码生成","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"}]},{"id":"-LvEOgIg8G9L0zZBwl6Y","title":"阶段任务","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LvEOgIhJm67buuC8Bbc","title":"TAC 程序","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/tac","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LvEOgIitQqkBzPrVvtZ","title":"面向对象机制","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/oop","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LvEOgIjR6Hp3NTPesXh","title":"控制流的翻译","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/control","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LwEgy-FRSsV9iAno0Iz","title":"PA4：中间代码优化","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"}]},{"id":"-LwEgy-GaiXDll6JPMa1","title":"实验内容","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-HNhts3tzJmg6Q","title":"基本块","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/ji-ben-kuai","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-I09_rOm1H41yO","title":"数据流分析概述","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shu-ju-liu-fen-xi-gai-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-J9DkqOWXWZLzU","title":"数据流优化概述","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shu-ju-liu-you-hua-gai-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-KlbUphPt8wiIn","title":"公共表达式提取","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/gong-gong-biao-da-shi-ti-qu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-LF8988QMs3j02","title":"复写传播","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/fu-xie-chuan-bo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-M132Lk5nO2VMu","title":"常量传播","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/chang-liang-chuan-bo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LwEgy-NtkudDjLhGCMx","title":"死代码消除","pathname":"/decaf-book/java-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/si-dai-ma-xiao-chu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Java 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LpkwmdExF7EXb72VHRE","title":"Scala 框架分阶段指导","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao","siteSpaceId":"sitesp_4oBLm","description":""},{"id":"-LpkwmdF2ivI3V1_xNsZ","title":"本章导引","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"}]},{"id":"-Lpweei8WF-rjPXIqsnb","title":"PA1：语法分析器的自动构造","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa1-yu-fa-fen-xi-qi-de-zi-dong-gou-zao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"}]},{"id":"-LpkwmdHe0r28SlAb-Qg","title":"阶段任务","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa1-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA1：语法分析器的自动构造"}]},{"id":"-LpkwmdI4clKR1gWGWdT","title":"词法分析","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa1-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lexer","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA1：语法分析器的自动构造"}]},{"id":"-LpkwmdLrKd6ozCHm-SW","title":"抽象语法树","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa1-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/tree","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA1：语法分析器的自动构造"}]},{"id":"-LpkwmdJMOP5hZwiew1h","title":"文法分析","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa1-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/parser","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA1：语法分析器的自动构造"}]},{"id":"-LpkwmdKdB7gc6UomoTN","title":"访问者模式","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa1-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/visitor","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA1：语法分析器的自动构造"}]},{"id":"-LsHS7rWMT_fSM9fa2Wk","title":"PA2：语义分析","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"}]},{"id":"-LsHS7rXlwev9wEmXkoy","title":"阶段任务","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsHS7rYp1gJAes4quVF","title":"类型、符号和作用域","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/datatype","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsHS7rZW6t3Su4rdQCL","title":"符号表构建","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/table","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LsHS7r_hFZKtVxxawRg","title":"类型检查","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/typecheck","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-LvEUgf4te335-Up6RXW","title":"PA3：中间代码生成","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"}]},{"id":"-LvEUgf5iX0z4x5VBjOz","title":"阶段任务","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LxL7sHTEZU4RycuMdJi","title":"TAC 程序","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/tac","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LxL7sHUHLH7flG5knft","title":"面向对象机制","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/oop","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-LvEUgf8HK53RUehYLGT","title":"控制流的翻译","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/control","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lvcsf0r-ZyoX9JCu8SS","title":"PA3-JVM：JVM 字节码生成","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3jvmjvm-zi-jie-ma-sheng-cheng","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"}]},{"id":"-Lvcsf0sUOyL5ENr4Jf_","title":"阶段任务","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3jvmjvm-zi-jie-ma-sheng-cheng/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3-JVM：JVM 字节码生成"}]},{"id":"-Lvcsf0tCADCXFs9R83C","title":"JVM 字节码简介","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3jvmjvm-zi-jie-ma-sheng-cheng/jvm","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3-JVM：JVM 字节码生成"}]},{"id":"-Lvcsf0uy9i3y00Fwqtr","title":"翻译过程","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa3jvmjvm-zi-jie-ma-sheng-cheng/translate","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA3-JVM：JVM 字节码生成"}]},{"id":"-LwEgy-jF6fCvnXZmvKm","title":"PA4：中间代码优化","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"}]},{"id":"-LwEgy-kXmTLF7sg_ouP","title":"实验内容","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHbQvoZfdNlv-O3","title":"基本块","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/ji-ben-kuai","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHcC5V4KPXi7I5B","title":"数据流分析概述","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shu-ju-liu-fen-xi-gai-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHd39nE7-a_PTm-","title":"数据流优化概述","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shu-ju-liu-you-hua-gai-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHeNoyLirFHryZq","title":"公共表达式提取","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/gong-gong-biao-da-shi-ti-qu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHfgR1olc9D8XZH","title":"复写传播","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/fu-xie-chuan-bo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHglE1Tw7P-67zG","title":"常量传播","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/chang-liang-chuan-bo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sHhQ6_IwfcZsKQc","title":"死代码消除","pathname":"/decaf-book/scala-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/si-dai-ma-xiao-chu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Scala 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-Lq10etsoSShhTMpe97I","title":"Rust 框架分阶段指导","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao","siteSpaceId":"sitesp_4oBLm","description":""},{"id":"-Lq10ettnMHhY1CAK4d9","title":"本章导引","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/index","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-Lq10etutAracz80K-I6","title":"PA1-A：语法分析器的自动构造","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-Lq10etvTymKRlai7Pec","title":"实验内容","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lq10etwjOIGYEvt8UCo","title":"lalr1使用指导","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lq10etxUW02VmsEiger","title":"编写lexer","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao/bian-xie-lexer","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"},{"label":"lalr1使用指导"}]},{"id":"-Lq10etyLEF6TlhXkD6C","title":"impl块的可选属性","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao/impl-kuai-de-ke-xuan-shu-xing","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"},{"label":"lalr1使用指导"}]},{"id":"-Lq10etzJKz24k8WHrqv","title":"产生式和语法动作","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao/chan-sheng-shi-he-yu-fa-dong-zuo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"},{"label":"lalr1使用指导"}]},{"id":"-Lq10eu-HMAVATB3SdXE","title":"解决冲突","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao/jie-jue-chong-tu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"},{"label":"lalr1使用指导"}]},{"id":"-Lq10eu0VUAvOI_-eFLK","title":"一个完整的例子","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao/yi-ge-wan-zheng-de-li-zi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"},{"label":"lalr1使用指导"}]},{"id":"-Lq10eu14sU4j_nSzx9h","title":"抽象语法树","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/chou-xiang-yu-fa-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lq10eu2SIZ-T_WhKdPC","title":"框架中部分实现的解释","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/kuang-jia-zhong-bu-fen-shi-xian-de-jie-shi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lq10eu3OcDC1mVXaV2A","title":"文件结构","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1a-yu-fa-fen-xi-qi-de-zi-dong-gou-zao/wen-jian-jie-gou","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-A：语法分析器的自动构造"}]},{"id":"-Lq10eu4Xds_QjY605Lt","title":"PA1-B：基于 LL(1) 的语法分析器半自动构造","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-Lq10eu5La_uEhaUtlnH","title":"实验内容","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-Lq10eu6ZrCZErki3O3B","title":"lalr1使用指导","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/lalr1-shi-yong-zhi-dao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-Lq10eu7zEDPkm5YiDHo","title":"错误恢复","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/cuo-wu-hui-fu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-Lq10eu8YKrlV6_K4fqL","title":"文件结构","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa1b-ji-yu-ll1-de-yu-fa-fen-xi-qi-ban-zi-dong-gou-zao/wen-jian-jie-gou","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA1-B：基于 LL(1) 的语法分析器半自动构造"}]},{"id":"-Lq10eu9KTKO60-o9x-C","title":"PA2：语义分析","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-Lq10euAKGIdbt_9AtHr","title":"实验内容","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-Lq10euBnMovL5my4Oi7","title":"语义分析","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/yu-yi-fen-xi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-Lq10euC2uJ4nOgL0Nca","title":"符号表","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/fu-hao-biao","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-Lq10euDynPj0a7uRo5o","title":"visitor模式","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa2-yu-yi-fen-xi/visitor-mo-shi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA2：语义分析"}]},{"id":"-Lq10euEHjRj86eTkPaG","title":"PA3：中间代码生成","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-Lq10euFGtqkHVHtlhqx","title":"实验内容","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lq10euGFF2MZxPGDxCG","title":"中间代码","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/zhong-jian-dai-ma","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lq10euHGme2nmvvvzdC","title":"中间代码中的类型信息","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/zhong-jian-dai-ma-zhong-de-lei-xing-xin-xi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lq10euINc6WWINLkUIX","title":"运行时存储布局","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/yun-hang-shi-cun-chu-bu-ju","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lq10euJIAgPkTDSOe33","title":"面向对象机制","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/mian-xiang-dui-xiang-ji-zhi","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lq10euKtcFrbgD7Va6p","title":"tacvm简述","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa3-zhong-jian-dai-ma-sheng-cheng/tacvm-jian-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA3：中间代码生成"}]},{"id":"-Lq10euLnoXRqtNOUXr0","title":"PA4：中间代码优化","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-LxL7sIDyNDG8D5mPrK-","title":"基本块","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/ji-ben-kuai","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sIEOwIhzaSCwnPk","title":"数据流分析概述","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shu-ju-liu-fen-xi-gai-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sIFrflUTuigBlSv","title":"数据流优化概述","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/shu-ju-liu-you-hua-gai-shu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sIGXo2p2R9suM8B","title":"公共表达式提取","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/gong-gong-biao-da-shi-ti-qu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sIHIVHRRBQM0H5j","title":"复写传播","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/fu-xie-chuan-bo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sII7cq2qaogTjn5","title":"常量传播","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/chang-liang-chuan-bo","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-LxL7sIJuIlCK88pJSMp","title":"死代码消除","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa4-zhong-jian-dai-ma-you-hua/si-dai-ma-xiao-chu","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA4：中间代码优化"}]},{"id":"-Lq10euUtgYSNlU0wQ6U","title":"PA5：寄存器分配","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"}]},{"id":"-Lq10euVVsf4Zv9DmWxv","title":"实验内容","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei/shi-yan-nei-rong","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA5：寄存器分配"}]},{"id":"-Lq10euWDk8tXvOEwthM","title":"图着色基本原理","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei/tu-zhuo-se-ji-ben-yuan-li","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA5：寄存器分配"}]},{"id":"-Lq10euX_ZhsCXCh8pMq","title":"着色算法","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei/zhuo-se-suan-fa","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA5：寄存器分配"}]},{"id":"-Lq10euYIlo5DJMtk5Ot","title":"预着色节点","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei/yu-zhuo-se-jie-dian","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA5：寄存器分配"}]},{"id":"-Lq10euZtl1GAmWRiZe-","title":"干涉图节点合并","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei/gan-she-tu-jie-dian-he-bing","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA5：寄存器分配"}]},{"id":"-Lq10eu_IE7dpCoSeE7b","title":"调用约定","pathname":"/decaf-book/rust-kuang-jia-fen-jie-duan-zhi-dao/pa5-ji-cun-qi-fen-pei/tiao-yong-yue-ding","siteSpaceId":"sitesp_4oBLm","description":"","breadcrumbs":[{"label":"Rust 框架分阶段指导"},{"label":"PA5：寄存器分配"}]}]}