PJ2026-0502 静态加速需求规格
修改历史
| 版本 |
对应 commit id |
更新日期 |
变更说明 |
| v0.1 |
待本版本提交 |
2026-07-21 |
建立静态加速独立路线边界,隔离 V2 动态内核。 |
修改历史只记录规格语义变更,不记录实现进度、阶段基线或一次性证据。
正文
PJ2026-0502 静态加速需求规格
1. 文档控制
2. 目的和范围
2.1 目的
静态加速路线的边界如下:
- 面向能够显式提供编译期约束的计算代码;
- 独立研究和交付高性能执行能力;
- 本规格只定义与 V2 的稳定隔离边界;
- 具体类型系统、编译 IR、后端和接入方式由后续 L2 SPEC 决策。
2.2 范围内
- 显式选择静态执行的函数、模块或文件边界。
- 静态语义、编译诊断、独立执行产物和动态运行时边界调用。
- 与 V1、V2、MicroPython native/Viper 和 C binding 的可比较 benchmark。
2.3 范围外
- 改变 V2 默认动态语言语义。
- 要求 V2 使用 type hint、LLVM、JIT 或静态产物。
- 用静态 workload 的结果证明动态 V2 内核性能。
- 在没有独立规格和资源验证时选定 LLVM 或其他重型工具链。
3. 术语表
| 术语 |
定义 |
| 显式选择 |
源码或构建配置清楚声明代码进入静态路线,不由运行时猜测。 |
| 边界调用 |
动态运行时与静态产物之间的参数、返回值、异常和资源所有权转换。 |
4. 系统边界和接口
| 边界项 |
内容 |
| 外部使用者 |
需要静态计算性能的嵌入式开发者和自动化构建系统。 |
| 外部输入 |
显式静态源码、编译约束、目标配置和边界绑定。 |
| 受控资源 |
静态编译器、执行产物、边界适配和诊断。 |
| 外部输出 |
静态执行产物、边界调用结果、编译错误和资源报告。 |
| 用户接口 |
后续 L2 SPEC 定义的显式选择语法和构建入口。 |
| 系统边界 |
静态路线只接管显式选择代码,不拥有 V2 动态内核。 |
5. 路线边界
6. 原子需求
6.1 STATIC-L1-REQ-001 独立演进
静态路线必须:
- 独立声明语言前提、编译工具链和目标平台;
- 独立声明资源预算和验收结果;
- 禁止其依赖进入 V2 最小构建、默认运行时或发布门禁。
6.2 STATIC-L1-REQ-002 显式边界
静态路线的边界调用必须满足:
- 由源码或构建配置显式选择;
- 明确动态与静态执行之间的值表示和内存所有权;
- 明确错误传播和调用成本;
- 不得依赖未声明的运行时猜测。
7. 验收合同
- 独立关闭静态路线后,V2 的构建、测试、性能和资源结果保持不变;
- 静态 benchmark 必须与 Viper、C binding 和适用动态 VM 分开披露语义前提;
- LLVM、其他 IR 或 native backend 只有在后续 SPEC 明确收益、工具链成本和 MCU 适用边界后才能成为实现选择。
8. 过程控制
- 后续实现引用
PJ2026-0502 静态加速 v0.1 及相应 L2 SPEC。
- 静态路线的当前实验、benchmark 和工具链调查进入 TaskTree 或 GitHub issue。
- 任何影响 V2 默认语义、构建依赖或资源基线的变化必须先回到 PJ2026-0501 V2内核 重新评审。