「：展开模式匹配类型
同时展开异常处理的内建操作符，
同时将顺序执行节点变成内联虑
同时把自由变量转换成内建变量
同时展开内建变量
：」

寻观「标准库」之书。
寻观「编译器核心」之「编译数据」之「抽象绑定树结构」之「抽象语法树」之「总集」之书。

。
寻观「编译器核心」之「编译数据」之「编译配置」之「编译期输出」之书。

寻观「编译器核心」之「编译数据」之「抽象绑定树结构」之「命名环境术」之书。

寻观「编译器核心」之「编译步骤」之「类型标注擦除」之「模式匹配消除」之书。

寻观「编译器核心」之「编译数据」之「操作符」之「操作符数据结构」之书。
寻观「拓展库」之「顺序标识符」之「顺序标识符」之书。

寻观「编译器核心」之「编译步骤」之「类型标注擦除」之「模式匹配展开」之书。

「展开构造器节点」乃化「表达式」 「：类型：」而
  化（化（「列」于「表达式」）而「表达式」） 「：参数到最终节点的变换：」而
  化（「列」于「字符串」）而「表达式」也。
「展开构造器节点」者会「类型」而会「最终构造」而会「已有参数」而
  鉴「类型」而
    有（「式节点」于「箭头类型节点」于（「缀」于「定义域」于（「缀」于「次类型」于「余类型们」）））
    则（虑「值域」者（鉴
          「余类型们」而
        有「罄」则「次类型」
        或有「非空余类型们」则「式节点」于「箭头类型节点」于（「缀」于「次类型」于「余类型们」））而
        虑「新名」者「下个字符序数」于『构造器参数』而「式节点」
          于（「拉姆达抽象」于「显式」）
          于（（「列」【（「进行抽象」于「新名」
          于（「展开构造器节点」于「值域」于「最终构造」
          于（（「附加」授以「字符串」）于「已有参数」于（（（「列」于「字符串」）也（（「列」【「新名」】）））））））】）））
    或有（「式节点」于（「隐式派类型节点」于「参数个数」）于（（「列」【「原绑定值域」】）））
    则（虑「新名及后值域」者
          「打开首隐式派类型」于
          「类型」于
          「已有参数」而
        「式节点」
        于（「拉姆达抽象」于「隐式」）
        于（（「列」【（「进行抽象」
          于（「新名及后值域」中「零」）
          于（「展开构造器节点」于（「新名及后值域」中「一」）于「最终构造」于「已有参数」））】）
        ））
    或有「其他」则
      「最终构造」于（（「态射」）于「已有参数」于「自由变量」）
也。

「：本函数调用前模式已经被顶部归一，所以不应该存在自由变量：」
「转换模式匹配模式」乃化「命名环境」而化「表达式」而「表达式」也。
「转换模式匹配模式」者会「境」而会「式」而
  鉴「式」而
    有（「式节点」于（「模式匹配新变量」于「名」）于「参」）则「式」
    或有（「式节点」于（「唯一构造器节点」于「序数」于「文件路径」于「构造器名」）于（（「列」【「构造器类」】）））
    则（「式节点」于（「展开后唯一构造器节点」于「序数」）于「罄」）
    或有（「式节点」于（「整数节点」于「数」）于「罄」）则
      （「式节点」于（「整数节点」于「数」）于「罄」）
    或有（「式节点」于（「字符串节点」于「串」）于「罄」）则
      （「式节点」于（「字符串节点」于「串」）于「罄」）
    或有（「式节点」于（「内建节点」于「内建爻阳」）于「罄」）则
      （「式节点」于（「内建节点」于「内建爻阳」）于「罄」）
    或有（「式节点」于（「内建节点」于「内建爻阴」）于「罄」）则
      （「式节点」于（「内建节点」于「内建爻阴」）于「罄」）
    或有（「式节点」于「函数调用」于（「缀」于「体」于「参数节点们」））则（鉴（「转换模式匹配模式」于「境」于「体」）而
      有（「式节点」于（「展开后唯一构造器节点」于「序数」）于「已有参数」）
      则（递归虑「处理参数节点」其化（「列」于「表达式」）而化（「列」于「表达式」）而「表达式」者
                会「当前参数」而会「余参数节点们」而鉴「余参数节点们」而
                  有「罄」则「式节点」于（「展开后唯一构造器节点」于「序数」）于「当前参数」
                  或有（「缀」于（「式节点」于（「参数节点」于「隐式」）于「忽略参数们」）于「后参数节点们」）则
                    「处理参数节点」于「当前参数」于「后参数节点们」
                  或有（「缀」于（「式节点」于（「参数节点」于「显式」）于「用们」）于「后参数节点们」）则
                    「处理参数节点」于（「附加」于「当前参数」
                      于（（「态射」）于「用们」于（会「参数」而「转换模式匹配模式」于「境」于「参数」）））于
                    「后参数节点们」
                  或有「其他」则「发生事故」于『模式函数调用脊不是参数节点』
              而
              「处理参数节点」于「已有参数」于
                    「参数节点们」
      ）
      或有「其他」则「发生事故」于（『期待展开后节点或新变量，不可以被调用』附（「表达式表示」于「式」）））
    或有（「式节点」于（「元组构造节点」）于「元素们」）则（「式节点」
      于（「元组构造节点」）于（（「态射」）于「元素们」于（会「素」而「转换模式匹配模式」于「境」于（「素」））））
    或有「其他」则「发生事故」于『不支持的模式匹配项』附（「表达式表示」于「式」）附『，环境：「：换行：」』附（「命名环境表示」于
      「境」
    ）也。

「模式匹配转换」乃化「命名环境」而化「表达式」而
  「表达式」 「：标注后的类和物：」
也。
「模式匹配转换」者会「境」而会「式」而
  递归虑「绑定对象模式匹配转换」其（化「命名环境」而
      化「表达式」 「：对象（是一个绑定）：」而
      化「表达式」 「：绑定类型：」而
      「表达式」 「：检查过的对象（是一个绑定）：」
  ）者（会「境」而
    会「绑定物」而会「绑定类型」而
      （虑「绑名」者「获取可能绑定名」于「绑定物」而
        虑「新绑名及新境」者「添加声明」于「境」于「绑名」于「绑定类型」而
        虑「新绑名」者（「新绑名及新境」）中「零」而
        虑「绑体」者「式替换」于（「自由变量」于（「新绑名及新境」）中「零」）
          于（「绑定物」）而
        虑「绑定体物」者「模式匹配转换」于（「新绑名及新境」中「一」）于「绑体」而
        「：TODO 验证模式匹配转换中没有绑定名：」
        （「进行抽象」于「新绑名」于（「绑定体物」））））而

      虑「无」者「详细调试打印行」于（会「无」而『模式匹配转换中』附（「表达式表示」于「式」））而
      虑「处理」者（「尝试运行」授以「表达式」）于（会「无」而
        虑「递归处理」者（遇「表达式」者「甲」而（「模式匹配转换」于「境」于「甲」））而
      鉴「式」而
        有（「式节点」于（「参数节点」于「形」）于「参数们」）则
            （「表达式统一操作」于「递归处理」于「式」）
        或有（「式节点」于「函数调用」于（「缀」于「函数」于「参数节点们」））则
            （「表达式统一操作」于「递归处理」于「式」）
        或有（「式节点」于（「文件定义引用节点」于「文件名」于「投影名」于「序数」）于「罄」）则
            「式」
        或有（「式节点」于（「结构投影带序数」于「串」于「序数」）于（（「列」【「前式」】）））则
            （「发生事故」于『模式匹配转换阶段不应再出现结构投影带序数：』附「串」）
        或有（「自由变量」于「名」）则
            「：我们在此处把自由变量换成内建的：」
            （虑「后自由」者（鉴「名」而
                有『《《内建类型：字符串》》』则「式节点」于（「内建节点」于（「内建类型字符串」））
                  于「罄」
                或有『《《内建类型：整数》》』则「式节点」于（「内建节点」于（「内建类型整数」））
                  于「罄」
                或有『《《内建类型：小数》》』则「式节点」于（「内建节点」于（「内建类型小数」））
                  于「罄」
                或有『《《内建类型：动态分类值》》』则「式节点」
                  于（「内建节点」于（「内建类型动态分类值」））于
                  「罄」
                或有『《《内建类型：有》》』则「式节点」于（「内建节点」于（「内建类型有」））于
                  「罄」
                或有『《《内建类型：爻》》』则「式节点」于（「内建节点」于（「内建类型爻」））于
                  「罄」
                或有『《《内建类型：元类型》》』则「式节点」于（「内建节点」于（「内建类型元类型」））于
                  「罄」
                或有『《《内建爻：阳》》』则「式节点」于（「内建节点」于（「内建爻阳」））于「罄」
                或有『《《内建爻：阴》》』则「式节点」于（「内建节点」于（「内建爻阴」））于「罄」
                或有『《《内建有：元》》』则「式节点」于（「内建节点」于（「内建有元」））于「罄」
                或有『《《内建函数：抛出异常字符串》》』则「式节点」
                  于（「内建节点」于（「内建函数抛出异常」））于
                  「罄」
                或有『《《内建函数：尝试运行字符串》》』则「式节点」
                  于（「内建节点」于（「内建函数尝试运行」））于
                  「罄」
                或有『《《内建函数：整数：相等》》』则「式节点」
                  于（「内建节点」于（「内建函数整数相等」））于
                  「罄」
                或有『《《内建函数：整数：大于》》』则「式节点」
                  于（「内建节点」于（「内建函数整数大于」））于
                  「罄」
                或有『《《内建函数：整数：减》》』则「式节点」
                  于（「内建节点」于（「内建函数整数减」））
                  于「罄」
                或有『《《内建函数：以当前续延调用》》』则「式节点」
                  于（「内建节点」于（「内建函数以当前续延调用」））于
                  「罄」
                或有「其他」则「式」
              ）而
              鉴「后自由」而
                有（「自由变量」于「后名」）则「式」
                或有「其他」则「模式匹配转换」于「境」于「后自由」
            ）
        或有（「式节点」于（「内建节点」于「量」）于「罄」）则（鉴「量」而
          有「内建函数抛出异常」则（「式节点」于（「拉姆达抽象」于「隐式」）
              于（「列」【（「进行无名抽象」于（ 「：者是返回值类：」
              「式节点」于（「拉姆达抽象」于「显式」）于（（「列」【（「构造抽象」于
                『异常字符串』于（会「异常字符串」而
                  「式节点」于「内联虑」于（（「列」【（「式节点」
                    于（「解析后外部调用节点无类型」于『豫言_获取当前异常处理器』）于「罄」），（「构造抽象」于
                    『处理函数』于（会「处理函数」而（「添加函数调用参数」
                      于（「自由变量」于「处理函数」）于
                      「显式」于（「自由变量」于「异常字符串」））））】））））】））））】））
          或有「内建函数尝试运行」则（「式节点」于（「拉姆达抽象」于「隐式」）
              于（「列」【（「进行无名抽象」于（ 「：者是返回值类：」
              「式节点」于（「拉姆达抽象」于「显式」）于（（「列」【（「构造抽象」于『尝试结构』于（会
                「尝试结构」而
                「式节点」于「续延调用节点」于（（「列」【（「构造抽象」于『尝试续延』
                  于（会
                  「尝试续延」而
                  「式节点」于「内联虑」于（（「列」【（「式节点」
                    于（「解析后外部调用节点无类型」于『豫言_获取当前异常处理器』）于「罄」），（「构造抽象」于
                    『先前异常处理器』于（会「先前异常处理器」而「式节点」于「内联虑」
                      于（（「列」【（「式节点」于（「拉姆达抽象」于「显式」）
                      于（（「列」【（「构造抽象」于『异常字符串』
                      于（会「异常字符串」
                      而「式节点」于「内联虑」于（（「列」【（「式节点」
                        于（「解析后外部调用节点无类型」于『豫言_设置当前异常处理器』）
                        于（（「列」【（「自由变量」于「先前异常处理器」）】））），（「进行无名抽象」于（「添加函数调用参数」
                        于（「自由变量」于「尝试续延」）于「显式」
                        于（「添加函数调用参数」于（「式节点」
                        于（「元组解构节点」于「一」）于（（「列」【（「自由变量」于「尝试结构」）】）））于
                        「显式」于（「自由变量」于「异常字符串」））））】））））】））），（「构造抽象」于
                        『新的异常处理器』于（会「新的异常处理器」而「式节点」于「内联虑」
                          于（（「列」【（「式节点」于（「解析后外部调用节点无类型」于『豫言_设置当前异常处理器』）
                          于（（「列」【（「自由变量」于（「新的异常处理器」））】））），（「进行无名抽象」于（「式节点」于
                          「内联虑」于（（「列」【（「添加函数调用参数」
                            于（「式节点」于（「元组解构节点」于「零」）
                            于（（「列」【（「自由变量」于「尝试结构」）】）））于「显式」
                            于（「式节点」于（「展开后内建节点」于「内建有元」）于「罄」）），（「构造抽象」于『返回值』
                            于（会
                            「返回值」而「式节点」于「内联虑」
                              于（（「列」【（「式节点」于（「解析后外部调用节点无类型」于『豫言_设置当前异常处理器』）
                              于（（「列」【（「自由变量」于（「先前异常处理器」））】））），（「进行无名抽象」
                              于（（「添加函数调用参数」于（「自由变量」于「尝试续延」）于「显式」
                                于（「自由变量」于「返回值」））））】））））】））））】））））】））））】））））】））））】））））】））

          或有「内建函数以当前续延调用」则（「式节点」于（「拉姆达抽象」于「隐式」）
              于（「列」【（「进行无名抽象」于（ 「：是返回值类：」
              「式节点」于（「拉姆达抽象」于「显式」）于（「列」【（「构造抽象」于
                『续延调用函数』于（会「续延调用函数」而
                  「式节点」于「续延调用节点」于（「列」【（「构造抽象」于『当前续延』
                    于（会
                    「当前续延」而「式节点」于「内联虑」于（「列」【（「式节点」于（「解析后外部调用节点无类型」于『豫言_获取当前异常处理器』）于「罄」），（「构造抽象」于
                      『先前异常处理器』于（会「先前异常处理器」而（「添加函数调用参数」
                        于（「自由变量」于「续延调用函数」）于「显式」
                        于（「式节点」于（「拉姆达抽象」于「隐式」）
                        于（「列」【（「进行无名抽象」于（ 「：这个是Throw的返回值类型：」
                        （「式节点」于（「拉姆达抽象」于「显式」）
                          于（（「列」【（「构造抽象」于
                          『续延提前返回值』于（会「续延提前返回值」而「式节点」于
                          「内联虑」于（（「列」【（「式节点」
                            于（「解析后外部调用节点无类型」于『豫言_设置当前异常处理器』）
                            于（（「列」【（「自由变量」于「先前异常处理器」）】））），（「进行无名抽象」
                            于（（「添加函数调用参数」
                              于（「自由变量」于「当前续延」）于「显式」
                              于（「自由变量」于「续延提前返回值」））））】））））】）））））】）））））】）））】）））】）））】））
          或有「其他」则（「展开构造器节点」于（「内建物类型」于「量」）
              于（会「参数们」而「式节点」于（「展开后内建节点」于「量」）于「参数们」）于「罄」
          ））
        或有（「式节点」于（「拉姆达抽象带类型」于「拉形」）于（（「列」【「原抽象类型」，「拉参」】）））
        则
            「：TODO：应该有很多可能性：」
            （虑「后体物」者「绑定对象模式匹配转换」于「境」于「拉参」于「原抽象类型」而
              （「式节点」于（「拉姆达抽象带类型」于「拉形」）
                于（（「列」【「原抽象类型」，（「后体物」）】））））
        或有（「式节点」于（「爻分支节点」）于（「列」【「爻式」，「阳式」，「阴式」】））
        则（虑「后爻式」者（「模式匹配转换」于「境」于「爻式」）而
            虑「后阳式」者（「模式匹配转换」于「境」于「阳式」）而
            虑「后阴式」者（「模式匹配转换」于「境」于「阴式」）而
            （「式节点」于（「爻分支节点」）于（「列」【「后爻式」，「后阳式」，「后阴式」】）））
        或有（「式节点」于（「整数节点」于「数」）于「罄」）则
            （「式节点」于（「整数节点」于「数」）于「罄」）
        或有（「式节点」于（「小数节点」于「数」于「整小部」）于「罄」）则
            （「式节点」于（「小数节点」于「数」于「整小部」）于「罄」）
        或有（「式节点」于（「字符串节点」于「串」）于「罄」）则
            （「式节点」于（「字符串节点」于「串」）于「罄」）
        或有（「式节点」于（「元组类型节点」）于「类型们」）则
            （「式」）
        或有（「式节点」于「内联虑带类型」于（「列」【「定义类」，「定义式」，「尾式」】））
        则（虑「后定义式」者（「模式匹配转换」于「境」于「定义式」）而
            虑「后尾式物」者「绑定对象模式匹配转换」于「境」于「尾式」于「定义类」而
            （「式节点」于「内联虑带类型」于（「列」【「定义类」，「后定义式」，「后尾式物」】）））
        或有（「式节点」于（「递归节点」）于（（「列」【「递归定义域」，「递归值域」】）））
        则（虑「后递归值域」者（「绑定对象模式匹配转换」于「境」于「递归值域」于「递归定义域」）
            而
            （「式节点」于（「递归节点」）于（（「列」【「递归定义域」，「后递归值域」】））））
        或有（「式节点」于「模式匹配」于（「缀」于「分析式」于「分支们」））
        则（虑「后分析式物」者「模式匹配转换」于
            「境」于「分析式」而
            虑「后分支们式」者（「态射」授以「表达式」授以「表达式」）于
              「分支们」
              于（会「分支」而（「模式匹配转换」于「境」于「分支」））而
            虑「展开后结果」者（「展开模式匹配顶层」
              于（「式节点」于（「模式匹配」）于（（「缀」授以「表达式」）于（「后分析式物」）于（「后分支们式」））））
            而
            鉴「展开后结果」而
              有（「式节点」于「模式匹配」于「参」）则（「展开后结果」）
              或有「其他」则（「展开后结果」））
        或有（「式节点」于（「模式匹配分支」）于（（「列」【「模式」，「结果」】）））
        则（虑「模式新变量们」者「读取模式匹配新变量」于「模式」而
            虑「无」者（若（「出现重复」授以「字符串」）于「串相等」于
              「模式新变量们」则「发生事故」于『模式有重复变量』附（「表达式表示」于「模式」）
            否则
              （「元」））而
            虑「归一后模式」者「模式」而
            虑「归一后模式新变量们」者「读取模式匹配新变量」于
                「归一后模式」而
            虑「无」者（若（「不等于」于（「长度」于（「归一后模式新变量们」））于（「长度」于（「模式新变量们」）））则
                「发生事故」于
                『模式的归一并未完全保持新变量(1)』附（「表达式表示」于「模式」）附『，』附（「表达式表示」于
                  「归一后模式」
                ）
            否则
              （若（（「互为子集」授以「字符串」）于「串相等」于（「归一后模式新变量们」）于（「模式新变量们」））则
                  「元」
              否则
                「发生事故」于
                  『模式的归一并未完全保持新变量(2)』附（「表达式表示」于「模式」）附『，』附（「表达式表示」于
                    「归一后模式」
                  ）））而
            虑「新境」者「添加模式匹配声明」于「境」于「归一后模式」而
            虑「展开后模式」者「转换模式匹配模式」于「境」于
                「归一后模式」而
            虑「分支物」者（「模式匹配转换」于「新境」于「结果」）而（（「式节点」
                  于（「模式匹配分支」）
                  于（（（「列」于「表达式」）也（（「列」【（「展开后模式」），（「分支物」）】）））））））
        或有（「式节点」于（「元组构造节点」）于「元素们」）
        则（虑「后式」者（「式节点」
              于（「元组构造节点」）于（（「态射」）于「元素们」于（会「元素」而「模式匹配转换」于「境」于「元素」）））
            而
            「后式」
        ）
        或有（「式节点」于（「元组解构节点」于「序数」）于（（「列」【「元组」】）））
        则（虑「后对子式」者
              「模式匹配转换」于「境」于
              「元组」而
            （「式节点」于（「元组解构节点」于「序数」）于（（「列」【（「后对子式」）】））））
        或有（「式节点」于「顺序执行节点」于（（「列」【「式甲」，「式乙」】）））
        则（虑「后式甲式」者
              「模式匹配转换」于
              「境」于「式甲」而
            虑「后式乙式」者「模式匹配转换」于「境」于「式乙」而（「式节点」于
              「内联虑」
              于（（「列」【（「后式甲式」），（「进行无名抽象」于（「后式乙式」））】））））
        或有（「式节点」于（「唯一构造器节点」于「序数」于「文件路径」于「构造器名」）
            于（（「列」【「构造器类」】）））
            则（（（「展开构造器节点」于「构造器类」于（会「参数们」而
              「展开展开后唯一构造器节点」于（「式节点」于（「展开后唯一构造器节点」于「序数」）于「参数们」））于
                    「罄」
                ）））
        或有（「式节点」于（「文件引用节点」于「新文件名」）于「罄」）则
            （（「式节点」于（「文件引用节点」于「新文件名」）于「罄」））
        或有（「式节点」于（「解析后外部调用节点带类型」于「串」）于（「缀」于「类」于「参」））则
            （（「式节点」于（「解析后外部调用节点带类型」于「串」）于（「缀」于「类」于「参」）））
        或有（「式节点」于「箭头类型节点」于「参」）则
            （「式」）
        或有（「式节点」于（「隐式派类型节点」于「忽略参数个数」）于「参」）则
            （「式」）
        或有「其他」则「发生事故」于『未有模式匹配转换126：』附（「表达式表示」于「式」））
            于（会「异常」而「发生事故」于「异常」附『「：换行：」在模式匹配转换』附（「表达式表示」于「式」）附『时』）
            而

            「处理」
也。

「模式匹配转换顶层」乃化「表达式」而「表达式」也。
「模式匹配转换顶层」者会「式」而
  「模式匹配转换」于「默认命名环境」于「式」也。
