在数字时代,数据保存与长期可读性正成为日益严峻的挑战。近日,一群来自全球多所高校与开源社区的极客与计算机科学家联合发起了一项名为“永恒软件倡议”(Eternal Software Initiative)的前沿项目,旨在借助一种极端简化的计算模型——Subleq单指令集计算机,实现软件与数据的“跨千年”可恢复性。这项看似偏执的计划,实则直指数字遗产保护的核心理念:越简单,越永恒。

何为Subleq?——比“减法”更本质的计算

Subleq是“Subtract and Branch if Less than or Equal to Zero”的缩写,意为“减一,若结果小于等于零则跳转”。它属于单指令集计算机(One-Instruction Set Computer, OISC)中的经典代表。在Subleq架构中,整个计算机只执行一条指令:从内存地址A中减去地址B的值,将结果存入地址C;如果結果小于或等于零,则跳转到地址D执行,否则顺序执行下一条指令。实际操作中,Subleq指令通常使用三个操作数:SUBLEQ a, b, c,对应功能为 mem[a] = mem[a] - mem[b];若结果 ≤ 0,则跳转到 c

令人惊讶的是,这样一个极简的指令集在理论上却是图灵完备的——它可以模拟任意可计算函数,包括加法、乘法、条件分支、循环甚至输入输出。正因其底层逻辑极度简洁,Subleq程序几乎不存在因指令集复杂度而引入的歧义或依赖性问题。

永恒软件倡议:对抗“软件腐烂”的激进实验

“永恒软件”项目的核心理念是:软件的本质是数据与指令的集合,其可执行性高度依赖于特定的硬件与操作系统环境。当原始平台消失,代码往往沦为一堆无法运行的“数字化石”。而Subleq架构提供了一种近乎理想的解决方案——任何能够实现整数减法与条件跳转的物理或虚拟设备,都可以执行Subleq程序。无论是晶体管计算机、量子计算模拟器,还是人类用纸笔手动推演,均可胜任。

该项目计划完成以下目标:

  1. 开发一套完全自包含的Subleq虚拟机,其规范精确到比特级别,不依赖任何外部库或操作系统。虚拟机本身也使用Subleq编写,并嵌入一个极简的自举程序。
  2. 将常用算法、数据格式(如UTF-8、PNG、ZIP)以Subleq代码形式重新实现,并附上详尽的中文与英文人类可读注释。
  3. 发布一系列“永恒介质”:将Subleq虚拟机与重要程序同时刻录在蓝光光盘、石英玻璃磁盘、甚至微缩胶片上,并配以纸质文档说明如何从最基本的数学操作开始重建运行环境。

倡议发起人之一、加州大学伯克利分校研究员陈立舟博士表示:“我们不是在开发下一个应用框架,而是在做数字文明的‘罗塞塔石碑’。即使未来数百年后人类失去了所有电子设备,只要有人还能读懂‘减法’和‘跳转’这两个概念,就能运行我们的软件。”

挑战与未来意义

尽管Subleq理念极具魅力,但实践中它面临巨大挑战。首先,Subleq编程极其繁琐——一个简单的“Hello World”就需要数百行指令。为此,团队正在开发一系列高级语言的编译器,目标是把C语言子集或Lisp翻译为Subleq代码。其次,由于指令集过于简单,执行效率极低。但项目方强调:永恒性优先于性能,慢而正确比快而短暂更有价值。

在数据存储领域,类似思想早有先例——瑞士科学家曾将DNA序列作为数据载体,但解码仍依赖现代设备。而Subleq方案则构建了一个完全独立于特定硬件、仅依赖人类抽象推理能力的自解码系统。如果这一倡议获得成功,它将为长期天文观测数据、文化遗产数字档案、甚至星际通信协议提供一种前所未有的安全冗余方案。

结语

“永恒软件倡议”目前仍处于原型阶段,其GitHub仓库已吸引超过2万星标。无论最终能否实现“千年运行”的宏大愿景,这一探索本身已提醒我们:在追求计算效率与功能膨胀的同时,或许最古老的、最简单的思想,才最接近数字世界的永恒。正如项目Wiki首页所写:“减法不会过时,跳转永不过时。”