Files
Endorphin-Document/appendices/specification-status.md
T

5.2 KiB

规范状态

本附录记录语言设计的确定程度与尚未定义的边界。它用于理解设计稿,不代表软件实现进度或可执行性保证。

已确定约定

主题 已确定内容
语言定位 前后端共用的云原生编程语言,UI 是应用领域之一
代码归属 每段代码属于唯一用户名和至少一级 namespace
用户身份 使用唯一 handle 定位,不用显示名替代
namespace 各层语义一致;以外部 key 检索,不在正文声明自身归属
key 形式 用户名:namespace路径,冒号分隔用户与路径,点号分隔层级
use 引用完整 namespace,不附加选择性名称列表
代码组织 独立代码段存储在 S3,由索引组装可见代码视图,不采用源码文件 module 制
数据结构目标 用 class 表达共享结构,通过类取得数据的具体形式另行定义
调用目标 普通逻辑调用表达输入、结果与依赖,系统组织执行
官方组件 官方 UI 组件与用户库内容分别定义
阶段命名 构建阶段为 Preflight,运行阶段为 inflight;名称本身不增加源码关键字

收录的语法提案

提案 正文位置 说明
词法与字面量 第 6 章 本书统一采用的标识符、字符串、数字和符号形式
类字段与类型标注 第 7 章 class 目标已确定,字段和类型体系仍为具体写法提案
表达式与 let 第 8 章 基础运算、成员访问与局部绑定
function 与 return 第 9 章 函数签名、基本函数体与调用组合
Product.get 第 10 章 读取体验提案,不是 class 自动附带的 API
场景与组件 第 11、12 章 scene、render、参数、布局与默认值

程序声明组合与形式文法同样属于设计稿。正文中的陈述定义这些提案内部的用法,不将其确定程度提升为最终规范。

身份与权限

尚未定义:

  • 用户名的字符、长度、大小写、Unicode 归一化及身份范围扩展。
  • handle 改名、旧名称复用、历史引用稳定性及账号生命周期。
  • 代码的默认公开性、读取与执行权限,以及 namespace 权限继承。
  • 协作、Agent 委托、操作身份记录与归属转移。

定位信息不构成授权,是这些规则必须保留的边界。

引用与代码视图

尚未定义:

  • 代码段的语法边界、视图成员范围和下级 namespace 的纳入方式。
  • use 的作用范围、声明可见性、限定名、别名与同名冲突。
  • 视图顺序、版本选择、成员一致性及编辑操作映射。
  • key 的传递编码和索引关联机制。

正文跨 namespace 示例采用目标声明可见、名称可直接解析且无冲突的条件;该条件不代替正式名称查找规则。

声明与类型

尚未定义:

  • 程序入口、空代码视图、多个场景的选择与顶层绑定。
  • 完整基础类型、数值范围、可选值、泛型及类型转换。
  • 类构造、方法、默认值、继承和字段可见性。
  • 重复声明、完整控制流、可变性、赋值和作用域细节。

本文简单函数体仅收录 let 与末尾 return,不意味着整门语言只允许这两种语句。

词法与表达式

尚未定义:

  • 完整保留字集合、Unicode 版本与字符类别边界。
  • 换行字符、字符串扩展转义、更多字面量和运算符。
  • 数值溢出、除法、隐式转换与所有调用参数的求值顺序。

正文中同级二元算术运算的组合顺序属于表达式提案,不规定所有调用的执行顺序。

调用与数据

尚未定义:

  • 显式等待、失败处理、缺失值、取消和超时的源码形式。
  • 数据读取成员的声明、参数与结果类型。
  • 一次结果、持续结果及其更新语义。
  • 带业务修改的调用顺序、重复执行限制与失败行为。
  • 更新代码时已有调用使用哪个版本。

正常结果必须符合声明,未就绪或失败不能伪造为成功结果。Product.get 示例只展示成功路径。

UI

尚未定义:

  • 官方组件库的 key、显式引用形式与名称可见性。
  • 命名参数和位置参数的完整绑定规则及重复传参处理。
  • 渲染中的调用、状态、数据绑定、事件与更新。
  • 布局单位、参数范围、负数、显式尺寸、约束与溢出。
  • 主题、样式、文字测量和其他组件。

正文的官方组件示例省略未定义的依赖部分,不承诺免导入使用。

Agent

Agent 是规划应用领域。声明、能力、工具、上下文、任务、生命周期、权限及模型驱动行为的边界尚未定义。

规范范围

本文定义源码及应有的语言效果。云端实体、持久化类、自动建表、通信、缓存、部署和编排实现不在本阶段规范中。

S3 约定仅用于代码存储,不规定业务数据后端。Preflight 与 inflight 的职责不要求特定机器码、执行图或部署产物。

目录