stage1 完成sema词法
This commit is contained in:
7
SPL.md
7
SPL.md
@@ -478,6 +478,13 @@ type T = TypeExpr — 完全同义。
|
||||
|
||||
匹配: match 必须穷举 (或含 _),否则编译错误。
|
||||
|
||||
## 名称解析
|
||||
|
||||
1. 函数内部 (参数 + 块局部,每个 {} 建立子 scope)。
|
||||
2. $root:文件聚合的 scope,所有顶层声明 (fn/type/var/const) 都是其成员。
|
||||
|
||||
无独立"全局"命名空间。$root 抽象不写死:@import(xxx) 返回的匿名结构即该模块当时的 $root,多文件时切换。字段/变体名不在 scope map 中 (存于聚合 def 的成员列表),裸名查找天然不命中字段;路径 a.b.c 首段裸名查 scope、后续段查聚合成员。
|
||||
|
||||
## 变量与常量
|
||||
var x: T 或 var x := init: 可变量。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user