Files
codex-bot ef1ba88161
Verify and deploy Tabularium / verify-and-deploy (push) Waiting to run
Add language design question collection with discussion decisions and provenance
2026-10-28 14:02:12 +08:00

51 lines
4.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 语言设计问题集
从名称与作用域到反射与表示,集中维护语言设计讨论中的问题、候选方案与确认记录。
当前收录 **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` 记录对应聊天标识,便于后续追溯。它是本次整理的来源清单,不是自动同步配置。