10元序FAQ

元序 WorldScript 常见问题(FAQ)


概念与定位

Q1:元序是一门编程语言吗?

是,但不是传统意义上的「写软件」的语言。元序是一门声明式因果语种,专为编码现实世界大系统的运行逻辑而设计。它的输出不是可执行程序,而是系统模型——描述一个系统如何在因果驱动下持续演化。

Q2:元序和 Python/Go/Java 是什么关系?

互补关系,不是替代关系。

  • Python/Go/Java 用来制造软件系统(Web服务、App、工具)
  • 元序用来运算真实世界系统(交通、生态、经济、气候、社会)

典型组合:用 Go/Python 做数据接入和前端展示,用元序做核心系统建模与推演。

Q3:元序能用来写网站/App/游戏吗?

不适合。元序没有 DOM、没有 UI 框架、没有图形渲染管线、没有网络协议栈。它的设计目标是系统建模,不是应用开发。详见《对比手册》第九章。

Q4:元序和 Prolog 有什么区别?

Prolog 是逻辑编程语言,回答「什么是真的」(无时间的推理);元序是因果语种,回答「系统会怎么演化」(有时间的推演)。Prolog 用布尔真值,元序用连续满足度。详见《对比手册》第五章。

Q5:元序和 Agent 建模工具(NetLogo)有什么区别?

NetLogo 等 ABM 工具以自主 Agent 为核心,微观到宏观的涌现需要手动观察统计。元序以状态场和因果规则为核心,微/中/宏三级域是语言原生能力,自动双向耦合。详见《对比手册》第七章。


语法与语义

Q6:元序为什么没有 if/else/for/while?

因为这些都是顺序执行的产物。元序的执行模型是「所有因果规则并行匹配,满足条件的涌现执行」,不需要分支和循环。if/else 被 When 的因果权重取代,for/while 被 Track 的趋势跟踪取代。

Q7:元序为什么没有类型(int/float/string/bool)?

因为真实世界的状态是连续的,没有绝对边界。温度不是「冷/热」的布尔值,而是连续谱;情绪不是「开心/不开心」的二元,而是连续变化的状态场。元序用连续状态场取代所有离散类型。

Q8:比较运算(>、<、==)返回什么?

不返回 true/false,返回 满足度(0~1 的连续值)。例如 温度 > 30 在温度为 31 时满足度约 0.2,在温度为 40 时满足度约 0.8。多条件用 & 连接时,满足度加权求和得到因果强度。

Q9:元序没有变量,怎么存数据?

用 State 状态场。状态场不是变量的集合,而是连续变化的状态维度的集合。每个维度有当前值、历史值、渐变目标,由运行时自动维护。

Q10:元序怎么处理「如果A则B,否则C」?

元序不写「否则」。你写两条 When 规则:

When A:
    执行B
When 非 A:
    执行C

两条规则并行评估,A 的满足度决定哪条规则的因果强度更高。不存在非此即彼的硬切换,而是连续过渡。

Q11:元序怎么实现循环?

不需要循环。元序的 Tick 循环是运行时内置的,程序本身不写循环。如果你想「持续监控某状态并响应」,用 When 规则(每个 Tick 自动评估)或 Track 规则(趋势跟踪)。

Q12:元序怎么调用函数/返回值?

元序没有函数调用和返回值。「函数」的概念被「涌现事件」取代——When 规则满足时涌现一个事件,事件的效果通过状态修改和偏差记录体现,不需要返回值。

Q13:元序支持递归吗?

不支持,也不需要。递归是顺序执行模型中的控制流概念。元序中的「自指」通过反馈回路(反馈→)和自演化(Evolve)实现。


运行时

Q14:元序程序从哪里开始执行?

没有 main 函数,没有入口点。程序加载后,运行时自动进入 Tick 循环,所有 State/When/Track/Link/Evolve 声明同时生效。

Q15:一个 Tick 内多条规则同时触发,按什么顺序执行?

因果强度降序执行。但由于所有规则的修改都写入暂存区,最后统一提交(两阶段提交),执行顺序对最终结果影响很小——冲突修改按因果强度加权叠加。

Q16:两条规则修改同一个状态,一个提升一个降低,会怎样?

运行时计算净效果:净修改 = Σ(规则i.因果强度 × 修改量) / Σ(规则i.因果强度)。因果强度高的规则话语权更大。如果双方强度接近且方向相反,标记为「因果对抗」,双方修改量减半,并记录偏差。

Q17:元序程序什么时候停止?

设计上永不停止。仅在两种情况终止:

  1. 外部信号(用户终止、系统关闭)
  2. 演化引擎检测到系统进入不可逆崩溃态(稳定性指数持续50 Tick < 0.1),保护性终止

Q18:元序能保证确定性吗?能回放吗?

能。给定相同初始状态和外部输入序列,运行结果完全确定。支持快照保存/加载、步进调试、分支推演和反事实分析。

Q19:元序的 Tick 和物理时间是什么关系?

Tick 是逻辑时间,不直接绑定物理时间。可配置映射(如 1 Tick = 5分钟/1小时/1天),也可以加速/减速/暂停。延迟因果中的「N Tick」都是逻辑 Tick。


容错与偏差

Q20:元序没有 Error,那程序写错了怎么办?

元序中的「错误」分为两类:

  • 语法错误:加载时由解析器报告,程序无法启动(这是元序唯一会「报错」的地方)
  • 运行时偏差:逻辑不符合预期时,系统产生偏差,偏差引擎观测、收敛、记录,供演化引擎学习

运行时永远不会因为除零、空引用、数组越界而崩溃——状态场永远有值,运算自动饱和。

Q21:除零会怎样?

元序的除法在除数趋近0时,结果自动饱和到最大值(clamp),不产生 Infinity 或 NaN,不报错。这是状态连续公理的直接体现。

Q22:偏差和异常有什么本质区别?

  • 异常(Exception):意外事件,需要被捕获和处理,否则程序崩溃
  • 偏差(Deviation):系统状态偏离预期,是常态,系统在偏差中存续并自动收敛

异常是「出问题了,必须处理」;偏差是「系统不完美,这很正常,我们观测并修正」。

Q23:如果偏差一直不收敛怎么办?

偏差引擎有四级收敛策略(观察→局部调整→全局抑制→系统保护)。如果偏差持续扩大导致系统稳定性指数低于崩溃阈值,系统进入保护性终止——这是元序唯一的「停机」场景,且属于自我保护而非错误。


自演化

Q24:Evolve 会把系统改坏吗?

有三重保护:

  1. 修改量限制:每次演化的参数修改不超过 εmax(默认0.05)
  2. 影子验证:新参数先在影子模式下重放历史,验证不导致偏差扩大才生效
  3. 自动回滚:生效后若偏差率上升超过20%,自动回滚到上一稳定参数

Q25:演化和硬编码有什么区别?

硬编码是「人写死规则,系统按规则运行」。演化是「人写初始规则,系统在运行中根据偏差反馈自动微调规则」。演化不改变公理和语法,只调整权重、阈值、系数等参数。

Q26:演化会导致不可预测的行为吗?

演化是可审计的。所有演化操作记录在演化日志中,包括提议原因、影子验证结果、应用/回滚状态。系统行为始终可回放、可解释。


状态与层级

Q27:微域/中域/宏域是固定的三级吗?能不能有更多层级?

元序原生定义三级(微/中/宏),但每一级内部可以有子层级。例如宏域下可以有「全球→区域→国家」,中域下可以有「城市→片区→社区」。三级是语义框架,不是硬性层数限制。

Q28:聚合是怎么计算的?我能控制吗?

聚合方式由运行时根据语义自动选择(平均/加权/求和/密度等),也可以在 Link 声明中指定。聚合权重可通过 Evolve 迭代修正。

Q29:约束是强制的吗?微观能违反宏观约束吗?

约束是软约束,改变微观状态的演化倾向,不是强制赋值。微观层面的强因果(如紧急事件)可以突破宏观约束。这符合真实世界——政策会影响个体行为,但个体不总是按政策行事。


实现与使用

Q30:元序现在能用了吗?

目前处于语言规范完成、解释器待实现阶段。文档体系(规范、演示案例、运行时架构、路线图)已完整,MVP 解释器(M1)尚未启动开发。详见《实现路线图》。

Q31:元序解释器用什么语言写?

MVP 阶段用 Python(快速验证语义),性能阶段用 Rust/Go 重写关键路径。详见《实现路线图》第二章。

Q32:元序文件的扩展名是什么?

建议使用 .ws(WorldScript)。

Q33:元序能和现有系统集成吗?

能。通过外部输入(传感器/API/消息队列)接入数据,通过外部输出(Webhook/通知/数据库)触发动作。经验库可导入导出,状态快照可序列化。详见《标准库API手册》第四章。

Q34:元序的性能怎么样?能模拟多大的系统?

MVP 阶段(Python):约 1000 维度 + 100 规则,几十 ms/Tick。
M4 优化后(向量化+分布式):目标 100万微域节点 + 1万规则,< 1秒/Tick。
详见《实现路线图》M4 阶段。

Q35:我想贡献代码,从哪里开始?

先读《元序规则》和《运行时架构》,然后按《实现路线图》M1 的任务清单开始。建议从词法分析器和语法分析器入手。


哲学与未来

Q36:元序的终极目标是什么?

成为人类第一门「运算真实世界」的语种——数字孪生的底层语言、政策推演的标准工具、复杂系统研究的通用平台。不是取代现有语言,而是填补「世界系统建模」这一空白。

Q37:元序能预测未来吗?

元序能做的是基于当前状态和因果规则的推演,不是预言。推演结果是概率性的、有置信度的,且随新数据持续修正。它能告诉你「如果当前趋势持续,系统可能如何演化」,不能告诉你「未来一定会怎样」。

Q38:元序和 AI/大模型是什么关系?

互补。大模型擅长自然语言理解和模式识别,元序擅长结构化的因果推演和系统建模。可能的结合:用大模型从自然语言描述生成元序程序,用元序做精确的系统推演,再用大模型解释推演结果。

Q39:元序会有自我意识吗?

不会。元序的「自演化」是参数微调,不是意识涌现。它是一个确定性的、可回放的计算系统,没有主观体验。

Q40:元序这个名字是什么意思?

「元」指元规则、底层、第一性;「序」指秩序、规律、系统运行的内在逻辑。元序 = 描述世界底层秩序的语言。英文名 WorldScript = 世界的脚本。


文档版本: WorldScript FAQ v1.0
有更多问题?欢迎在项目中提出。

posted @ 2026-09-03 16:29  新哲  阅读(10)  评论(0)    收藏  举报