51 lines
4.5 KiB
Markdown
51 lines
4.5 KiB
Markdown
# 语言设计问题集
|
||
|
||
从名称与作用域到反射与表示,集中维护语言设计讨论中的问题、候选方案与确认记录。
|
||
|
||
当前收录 **13 个分类、271 项议题,26 项已确认**。本合集是设计工作底稿,不是已经实现的语言规范。
|
||
|
||
## 章节目录
|
||
|
||
| 分类 | 议题数 | 已确认 | 当前问题 |
|
||
| --- | ---: | ---: | --- |
|
||
| [02 · 名称与作用域](/docs/language-design/02-questions) | 22 | 13 | 02-15 |
|
||
| [03 · 值与类型](/docs/language-design/03-questions) | 30 | 13 | 03-14 |
|
||
| [04 · 存储与生命周期](/docs/language-design/04-questions) | 20 | 0 | 04-01 |
|
||
| [05 · 对象与成员](/docs/language-design/05-questions) | 18 | 0 | 05-01 |
|
||
| [06 · 表达式与运算](/docs/language-design/06-questions) | 20 | 0 | 06-01 |
|
||
| [07 · 函数与调用](/docs/language-design/07-questions) | 22 | 0 | 07-01 |
|
||
| [08 · 控制流](/docs/language-design/08-questions) | 20 | 0 | 08-01 |
|
||
| [09 · 集合与访问协议](/docs/language-design/09-questions) | 22 | 0 | 09-01 |
|
||
| [10 · 错误与资源](/docs/language-design/10-questions) | 16 | 0 | 10-01 |
|
||
| [11 · 模块与程序执行](/docs/language-design/11-questions) | 22 | 0 | 11-01 |
|
||
| [12 · 并发与异步](/docs/language-design/12-questions) | 21 | 0 | 12-01 |
|
||
| [13 · 外部交互](/docs/language-design/13-questions) | 22 | 0 | 13-01 |
|
||
| [14 · 反射与表示](/docs/language-design/14-questions) | 16 | 0 | 14-01 |
|
||
|
||
## 怎样继续讨论
|
||
|
||
每项保留原编号、问题范围与验收要求。只有规则、正常示例、边界情况和失败行为明确,并且已有用户确认或明确授权的默认方案时,才勾选完成。建议、语言对照和“已介绍过”均不计为已确认。明确决定不支持某项能力时,也应记录其后果。
|
||
|
||
已有展开的问题保留 Python、JavaScript/TypeScript、Go、Rust 等语言的对照和原始资料链接;其余议题保留问题与验收要求,后续讨论时再补充对应方案与来源。
|
||
|
||
复选框是 Markdown 中的维护记录。更新章节后,也要同步本页的数量、当前问题和跨分类约束;网站不会自动从聊天同步。
|
||
|
||
## 已有决定与待对齐事项
|
||
|
||
- **名称与作用域**:已确认词法作用域、普通函数局部绑定、块内 `let`、遮蔽、编译时确定赋值检查、`nonlocal`、循环中的独立 `let` 绑定和默认捕获绑定。02-11 的特殊结构作用域仍待核对;02-15 的多个闭包共享读写仍待选择。
|
||
- **值与类型**:已确认动态类型、名字绑定对象、显式转换、精确有理数 `Number`、默认分数显示、Unicode 字符串及独立 `Boolean`;条件只接受 `Boolean`。`String * 整数值 Number` 已修订为等价于 `duplicate`,不能继续沿用早期“不支持字符串乘法”的记录。
|
||
- **空值仍待确认**:已提出“变量位置存在、当前没有目标对象”的需求;`null` 本身是否为对象尚未得到最终确认。把引用设为 `null` 不会替原对象保活,具体回收机制仍待设计。
|
||
- **赋值与对象模型**:04-01、05-01 的原讨论尚未完成,但 03 已记录对象绑定与基本类型按类建模的方向。后续应先核对适用范围,再决定生命周期和对象扩展规则,避免重新默认为全部未定。
|
||
- **运算、控制流与集合**:06 的类型组合与条件、08 的真值判断、09 的文本索引应分别对齐 03 的显式转换、仅布尔条件及码点索引规则。
|
||
- **错误机制**:03 已确认除零触发算术错误;10 的通用失败模型仍待选择。错误分类、捕获与传播必须交叉核对。
|
||
- **执行与类型检查**:03 原讨论记录了解释执行、REPL 与动态类型的方向。名称与确定赋值仍可做执行前检查;不应把动态类型误写成“没有任何执行前检查”。其他章节的“静态或运行时待定”应按具体检查对象重新核对。
|
||
|
||
跨分类事项保持未完成,直到相关分类明确对齐。本次整理不据此替用户选择新的规则。
|
||
|
||
## 来源与维护范围
|
||
|
||
本合集依据用户指定的“语言设计 02”至“语言设计 14”聊天整理,截至 2026-10-28。章节保留原编号,本次没有提供 01 分类的对应语言设计聊天,因此不补造该章。附带的《Chromium 主线 01:导航与文档提交》属于另一主题,未并入。
|
||
|
||
各章末尾标明原讨论标题;仓库的 `content/language-design-sources.json` 记录对应聊天标识,便于后续追溯。它是本次整理的来源清单,不是自动同步配置。
|
||
|