豫言源码浏览器 / Source Browser

浏览项目文件与源码

yuyan · 169 行 · 8469 字节 · UTF-8
§
寻观「标准库」之书。

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

寻观「编译器核心」之「顺序标识符」之「顺序标识符」之书。

寻观「编译器核心」之「编译数据」之「操作符」之「操作符数据结构」之书。
寻观「编译器核心」之「编译数据」之「操作符」之「操作符操作」之书。
寻观「编译器核心」之「编译步骤」之「语法分析」之「注释操作」之书。

「过期的不动点操作符」者
  「构造操作符」
    于(「列」【「字符串组件」于『循』,「绑定组件」,「字符串组件」于『以』,「元素组件」】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有(「列」【「绑定式」,「主体」】)则
          (「可有」于(「转移表达式表层注释」于「绑定式」于「主体」))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『循□以〇』
也。

「拉姆达操作符」者
  「构造操作符」
    于(「列」【「字符串组件」于『会』,「绑定组件」,「字符串组件」于『而』,「元素组件」】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有(「列」【「绑定式」,「主体」】)则(「可有」
          于(「转移表达式表层注释」
            于「绑定式」
            于(「式节点」
              于(「拉姆达抽象」于「显式」)
              于((「列」【(「进行抽象」于(「获取绑定字符串」于「绑定式」)于「主体」)】)))))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『会□而〇』
也。

「有类型的拉姆达操作符」者
  「构造操作符」
    于(「列」【
      「字符串组件」于『遇』,
      「元素组件」,
      「字符串组件」于『者』,
      「绑定组件」,
      「字符串组件」于『而』,
      「元素组件」
    】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有「列」【「定义域」,「绑定式」,「主体」】则(「可有」
          于(「转移表达式表层注释」
            于「绑定式」
            于(「式节点」
              于(「拉姆达抽象带类型」于「显式」)
              于((「列」【「定义域」,(「进行抽象」于(「获取绑定字符串」于「绑定式」)于「主体」)】)))))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『遇〇者□而〇』
也。

「隐拉姆达操作符」者
  「构造操作符」
    于(「列」【「字符串组件」于『受』,「绑定组件」,「字符串组件」于『而』,「元素组件」】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有(「列」【「绑定式」,「主体」】)则(「可有」
          于(「转移表达式表层注释」
            于「绑定式」
            于(「式节点」
              于(「拉姆达抽象」于「隐式」)
              于((「列」【(「进行抽象」于(「获取绑定字符串」于「绑定式」)于「主体」)】)))))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『受□而〇』
也。

「普通函数类型操作符」乃「操作符」也。
「普通函数类型操作符」者
  「构造操作符」
    于(「列」【「字符串组件」于『化』,「元素组件」,「字符串组件」于『而』,「元素组件」】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有(「列」【「定义域」,「值域」】)则
          (「可有」于(「函数类型」于「定义域」于「值域」))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『化〇而〇』
也。

「旧类型参数定义域检查」乃化「表达式」而化「字符串」而「有」也。
「旧类型参数定义域检查」者会「定义域」而会「操作符名」而
  鉴「定义域」而
    有(「式节点」于(「带注释节点」于「忽略前注释」于「忽略后注释」)于((「列」【「原式」】)))则
      「旧类型参数定义域检查」于「原式」于「操作符名」
    或有(「自由变量」于「名」)则
      若(「串相等」于「名」于『元类型』)
      则
        「元」
      否则
        「发生事故」
          于「操作符名」附『已不再支持非元类型的依赖函数类型参数』
    或有(「式节点」于(「内建节点」于「内建类型元类型」)于「罄」)则「元」
    或有「其他」则
      「发生事故」于「操作符名」附『已不再支持非元类型的依赖函数类型参数』
也。

「派函数类型操作符」乃「操作符」也。
「派函数类型操作符」者
  「构造操作符」
    于(「列」【
      「字符串组件」于『化』,
      「元素组件」,
      「字符串组件」于『者』,
      「绑定组件」,
      「字符串组件」于『而』,
      「元素组件」
    】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有「列」【「定义域」,「绑定名」,「值域」】则
          (「旧类型参数定义域检查」于
            「定义域」于『化〇者□而〇』;
            「可有」于(「转移表达式表层注释」
              于「绑定名」
              于(「隐式类型函数类型」于(「获取绑定字符串」于「绑定名」)于「值域」)))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『化〇者□而〇』
也。

「隐派函数类型操作符」乃「操作符」也。
「隐派函数类型操作符」者
  「构造操作符」
    于(「列」【
      「字符串组件」于『承』,
      「元素组件」,
      「字符串组件」于『者』,
      「绑定组件」,
      「字符串组件」于『而』,
      「元素组件」
    】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有「列」【「定义域」,「绑定名」,「值域」】则
          (「旧类型参数定义域检查」于
            「定义域」于『承〇者□而〇』;
            「可有」于(「转移表达式表层注释」
              于「绑定名」
              于(「隐式类型函数类型」于(「获取绑定字符串」于「绑定名」)于「值域」)))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『承〇者□而〇』
也。

「隐派函数无类型类型操作符」乃「操作符」也。
「隐派函数无类型类型操作符」者
  「构造操作符」
    于(「列」【「字符串组件」于『承』,「绑定组件」,「字符串组件」于『而』,「元素组件」】)
    于(「行」于「下个序数」)
    于(会「当前文件名」而会「式列」而鉴「式列」而
        有(「列」【「绑定名」,「值域」】)则(「可有」
          于(「转移表达式表层注释」
            于「绑定名」
            于(「隐式类型函数类型」于(「获取绑定字符串」于「绑定名」)于「值域」)))
        或有「其他」则
          「发生事故」于『内65:操作符参数个数不匹配』
    )于『承□而〇』
也。