RFC [编号]: [提案标题]
参考: 查看 完整示例 了解如何编写 RFC。
摘要
用 1-2 句话概括这个 RFC 要解决的问题和提出的解决方案。
动机
为什么需要这个特性/变更?
解释为什么这个 RFC 是必要的,解决什么问题或满足什么需求。
当前的问题
描述当前状态存在的问题,使用具体的例子(如果有)。
提案
核心设计
描述提议的解决方案,包括核心概念和数据结构。
示例
提供代码示例来说明提案的使用方式:
yaoxiang
# 示例代码语法变化
如果提案涉及语法变更,列出变化前后的对比:
| 之前 | 之后 |
|---|---|
| 语法 A | 语法 B |
详细设计
类型系统影响
描述对类型系统的影响,是否引入新类型、类型约束等。
运行时行为
描述运行时行为的变化(如果有)。
编译器改动
列出需要修改的编译器组件。
向后兼容性
评估是否向后兼容,以及如何处理现有代码。
权衡
优点
- 列出采用此提案的优点
缺点
- 列出采用此提案的缺点或风险
替代方案
列出考虑过的替代方案,以及为什么没有选择它们。
实现策略
依赖关系
列出此 RFC 依赖的其他 RFC 或功能。
风险
识别实现中的潜在风险。
开放问题
列出需要进一步讨论的问题。
格式:
markdown
- [ ] 问题描述(@用户名:补充说明)附录(可选)
附录A:设计讨论记录
用于记录设计决策过程中的详细讨论。
讨论模板
markdown
### [讨论主题]
> **讨论状态**: [开放中 | 已解决] **发起者**: @用户名 **日期**: YYYY-MM-DD
#### 问题描述
[描述需要讨论的问题]
#### 备选方案
| 方案 | 描述 | 优点 | 缺点 |
| ---- | ---- | ---- | ---- |
| A | ... | ... | ... |
| B | ... | ... | ... |
#### 讨论记录
- [日期] @用户名:[意见]
- [日期] @用户名:[意见]
#### 决议
[最终决定及理由]讨论管理规则
| 阶段 | 操作 |
|---|---|
| 讨论中 | 记录在附录,保持开放状态 |
| 已解决 | 更新决议,标记状态,更新正文相关内容 |
| 放弃 | 标记放弃原因,保留记录供参考 |
重要: 讨论确定后,必须更新正文相关内容!讨论记录可保留作为历史参考。
附录B:设计决策记录
记录RFC中已确定的设计决策及其理由。
| 决策 | 决定 | 日期 | 记录人 |
|---|---|---|---|
| ... | ... | ... | ... |
附录C:术语表
| 术语 | 定义 |
|---|---|
| ... | ... |
参考文献
- 相关文档或外部资源链接
- 类似的实现或其他语言的参考
