mirror of
https://github.com/erg-lang/erg.git
synced 2025-10-03 05:54:33 +00:00
36 lines
1.1 KiB
Markdown
36 lines
1.1 KiB
Markdown
# 概览
|
||
|
||
介绍每个图层的工作方式以及特别重要的函数和方法。
|
||
|
||
## 1. 词法分析
|
||
|
||
* 执行词法分析。(<gtr=“4”/>作为迭代器实现)是词法分析的主要逻辑。将输出<gtr=“5”/>作为分析的结果。
|
||
|
||
## 2. 语法分析
|
||
|
||
* 执行解析。尤其重要的是。作为分析的结果,将输出<gtr=“9”/>,它是<gtr=“8”/>的集合。
|
||
|
||
## 3. 脱糖
|
||
|
||
* 进行脱糖。将输出。
|
||
|
||
## 4. 类型检查/类型推理
|
||
|
||
* 用于输入数据。类型检查主要通过进行。特别重要的是<gtr=“14”/>(确定子类型关系),<gtr=“15”/>(对类型变量进行单一化/半单一化)和<gtr=“16”/>(定义嵌入式 API)。将输出<gtr=“17”/>作为分析的结果。
|
||
|
||
## 5. 副作用检查
|
||
|
||
* 。
|
||
|
||
## 6. 所有权检查
|
||
|
||
* 。
|
||
|
||
## 7. 字节码生成
|
||
|
||
* 将<gtr=“21”/>转换为<gtr=“22”/>。<gtr=“23”/>保留字节码和执行设置。尤其重要的是。
|
||
|
||
---
|
||
|
||
* 所有这些操作都由作为外立面进行总结。
|
||
* 生成的字节码当然由 Python 执行,但它被称为。
|