豫言编程语言技术文档
本知识库说明豫言程序如何被解析、检查、编译和执行,以及不同实现之间必须遵守的接口约定。规则覆盖源语言、编译器和运行时,适用于查阅语言行为、理解实现或编写兼容工具。
规范范围
正文采用豫言仓库的《独立实现技术规范》,共八篇,每篇提供汉语与文言版本,并保留原有规则编号。本版规范描述提交 4cdeca1 的实现基线;不能将其中的平台布局、限制或兼容缺陷自动视为后续版本的承诺。
语言行为与模块接口分开定义:源码兼容关注程序的接受边界和可观察行为;ABI 兼容还要求值表示、调用协议、导入导出、定义身份及回收约定一致;逐字节复现是另一项要求。
技术章节
兼容目标、实现边界与基本数据模型。
各子语言共同遵守的设计原则:一种语法、后缀定种类、经无体声明相接、统一执行边界;以及它们在一个程序里怎样配合。
字符与令牌、操作符结合、声明和语法糖。
豫言源码的写法(提案 00027 关键词换字):各构造的写法、解析约束、打印规则与核对。
类型形成、双向检查、隐参、名称解析与模块身份。
标签函数类型的形成、调用与语义。
类型依赖整数、爻、字符串及其列表的值:写法、隐式值参数与依值模式匹配。
整数定义域的类型构造器参数、索引式形状与闭合整数索引比较。
爻定义域的类型构造器参数、字面运算规约与闭合索引比较。
字符串定义域的类型构造器参数、拼接规范形与闭合索引比较。
列表定义域的合法性检查、闭合元素规范值与附加比较。
求值次序、递归、异常、擦除、闭包与代码生成。
WasmGC 的值表示、调用、模块、异常与宿主引用桥。
操作符的显式结合关系与后备规则。
源文件、文档、测试数据与构建产物的全部后缀,各附实例;导入时的查找次序。
固定提交、源码依据、ABI 核验与维护约束。
用豫言标准语法写 GPU 着色程序,类型检查后译成 WGSL、MSL 与 PTX。
查阅约定
- 必须、可、禁止分别表示兼容要求、实现自由和不允许的互操作输入。
- 兼容缺陷记录基线实现的实际边界,不表示推荐的语言设计。
- 章节中的规则编号与双语原文对应;页面末尾提供原文来源,源码引用固定到规范基线。
- 使用左侧搜索查找名称、规则编号、关键字或接口符号,例如“隐参”“GC”“i31”。
教程与技术文档分别维护。学习如何编写程序请阅读教程;某个包的公开接口与版本信息请查阅包管理器。代码与文档里外来术语的中文名(如诺驿、结森)及其由来见译名;按文件后缀区分的各种子语言见子语言;林纳常用命令在豫言壳里的写法见林纳命令对照。