Quantum 1.0
机器翻译
本页由英文原文机器翻译而来,尚未经过母语审校,欢迎在 GitHub 上提出修改。内容如有出入,以英文原文为准。
2026-09-25
Quantum 1.0 发布了。本文介绍它是什么、这个版本号承诺什么、我们如何验证这个承诺成立,以及接下来做什么。
Quantum 是什么
用 XML 编写的声明式 Web 应用,语言内置 AI 与 RAG。无需构建工具链,无需 JavaScript,无需前端框架。
一个页面就是一个 .q 文件。状态、参数化 SQL、表单及其校验、组件、身份认证、文件上传和邮件都是标签; 基于知识库回答并引用来源的 LLM 调用,以及工具用 Quantum 本身编写的智能体,也都是标签。 quantum start 直接提供一个页面文件夹;不需要任何编译。
它面向独立开发者和小团队,用来构建内部工具、仪表盘、管理后台和 AI 应用——他们宁愿不去维护一套前端构建工具链。 它并不是 JavaScript 框架的通用替代品。
1.0 承诺什么
承诺写在稳定性中,并由引擎强制执行:
- 核心层(Core)——组件、
q:set、q:if、q:loop、q:function、q:query和q:transaction、q:action与表单、q:invoke、q:data、组件组合、文件、邮件、ui:*的核心集合、身份认证。 - AI 层——
q:llm、q:knowledge、q:agent。 - 实验层(Experimental)——可以运行但不作承诺的标签(任务、消息、websocket、Python 脚本、终端目标……)。 核心层和 AI 层之外的标签在第一次运行时会打印一条警告。
- 实验室(Laboratory)——2D 游戏引擎和其他为了检验语言而保留的目标,完全不作承诺。
从 1.0 起,核心层和 AI 层遵循语义化版本(semver):1.x 版本不会破坏只使用这两层的程序。 会造成破坏的变更要等到 2.0。实验层和实验室可能在任何版本中变化。
如何验证
承诺的可靠程度取决于检查它的东西。有四样东西在检查:
- 带规则编号的规范。 SPEC.md 用 137 条编号规则(
LOOP-2、DB-4、IA-6……)说明一个 Quantum 程序的含义,并在 1.0 冻结。 每条规则至少被一个一致性测试引用——共 866 个——如果某条规则没有测试,或者某个测试引用了不存在的规则,CI 就会失败。 - 真正使用它的应用。 仓库中每一层都有小而真实的应用:一个用
ui:*绘制、可在浏览器、终端和桌面窗口中运行的任务列表; 一个博客;一个带附件和邮件的工单系统;一个在单个q:transaction中完成的银行转账;以及用于 AI 标签的文档助手和购物智能体。 quantum test。 应用用它自己的语言来测试——*.test.q访问页面、提交动作,并检查重定向、提示消息、数据表中的行和变更历史, 每个测试都在由迁移构建的全新数据库上运行。这些应用的测试套件在 CI 中运行。- 实时 AI 测试。 每次发布前,AI 标签都会针对真实的模型服务器进行测试,使用结构性断言(工具被调用了、取回了正确的文本块), 从不比较确切的文字。
而状态页面不是手写的:一个脚本运行每个示例,报告哪些能解析、哪些能执行。
一路上改变了什么
从 0.9 到 1.0 的路,大部分都在让承诺成为事实:过去会悄无声息失败的行为——拼错的名字、不起作用的属性、 缺失的键、不存在的查询字段——现在都是会指出行号的错误。细节见更新日志,按版本列出。
接下来
quantum test继续扩展:应用所做的更多事情,都应该能用它自己的语言来检查。- 从实验层到核心层,一次一个标签,并且只有在具备 SPEC 规则、引用它的测试、能运行的示例和指南页面之后。
- 本站点:多语言翻译和独立域名。
欢迎在 GitHub Issue 中报告问题、提出疑问和想法。 如果 Quantum 对你有用,支持页面说明了帮助会用在哪里。