公告

FujoOS公布日延期,以仓库发布为准

新闻

Loment 开发组工具准备完成,9 月 20 日面向开发者社区

后置订正(2026-09-16): 这一页写的是 9 月 12 日的状态,其中六处在 0.1.4 Alpha2 之后已不成立:包管理器 lompkg 早已重写(0.1.4 就已逐字节相同,目录遍历与 SHA-256 用 syscall 自备),L0 生成器 lomc 也一并搬到了 Loment;安装语言服务与跑 lomc.ps1 现在不需要 clang,也不需要 WSL,产物在 Windows 上原生出 PE;里程碑是 96 个而非 86 个(未开始的只剩 M39 一项),审计主张是 24 条而非 16 条;loment 的命令面从 9 条扩到 38 条,而且命令面本身就是用 Loment 写的;lompi 随包发行。还有一处整个前提都没了:这一页请人「9 月 15 日填 Early Use 表单」——源代码 9 月 17 日公开之后,没有要提前拿的东西了,那张表连同那个页面已经撤掉。原文保留不改,见 0.1.4 Alpha2 与 FOC-0.1.0

Loment 的开发工具链已经完成。面向开发者社区开放的时间定在 9 月 20 日。希望在该日期之前使用的开发者,可于 9 月 15 日填写 Early Use 表单,获得 Loment 0.1.4 Alpha2。

「工具准备完成」指的是什么

指的是一个具体的事实:从零开始编写 Loment、并在编辑器中使用的这条路径,已经不再依赖 Python 解释器。

这条路径上原有三项工具由 Python 实现——格式化器、文档生成器、语言服务。现在三项都有了 Loment 版本。它们承担的判据不是运行通过,而是逐字节一致:

lomfmt(格式化器):42 个语料加 4 个边界,再加幂等性,输出与 Python 版本逐字节相同。

lomdoc(文档生成器):43 个语料加 1 个边界,同样逐字节相同。编写过程中还发现参考实现的一个缺陷——注入的 Result 枚举携带了 prelude 的行号,因而会把上文某条 capability 的注释当作自身的文档。

loment_lsp(语言服务):提供补全、跳转定义与改动后诊断,安装只需一条命令 scripts/install-lsp.ps1,由种子与 clang 现场编译,全程不涉及解释器。

「逐字节相同」这一判据需要明确:它不表示「看起来一致」,而是同一输入送入两个实现后,cmp 报告零字节差异。这是本项目对「等价」的定义,也是上述工具被称为重写、而非替代品的依据。

对开发者意味着什么

Windows 上提供 scripts/lomc.ps1,同样基于种子与 clang,无需安装 Python 即可编译运行;.lomt.lom 的文件类型已经注册。

语言服务亦可作为 CI 环节:lsp --check FILE 将诊断以「路径:行:列: 错误码 标题」写入标准输出,退出码为 0 或 1,可直接接入编辑器任务或流水线。

尚未完成的

一百个里程碑已完成 86 个。未开始的 4 个(M37、M39、M40、M42)均在内核侧,等待内核线排期。未达的 1 个是 M100,其缺口不在门禁——门禁已经齐备,一条 tools/loment_audit.py 即可运行全部 16 条主张并将证据落盘——而在第三方复核本身,这一点作者无法自证。

工具链上仍存在 Python:包管理器 lompkg 尚未重写,它需要 JSON 解析、目录遍历与 SHA-256,而运行时仍缺 getdents;测试侧判据仍为 Python,该部分不影响 Loment 的构建与使用。

语言服务目前不提供格式化,也不建立跨文件索引;lompkg 仅解析本地路径依赖,没有网络仓库。这些边界之所以写明,是因为 9 月 20 日交付的内容,应当与它宣称的范围一致。

如需立即开始,上手文档(Beta)提供了从零到运行的第一条命令。