第8章 记忆仓库

他没有碰鼠标。

代码一行一行往上滚,快得看不清,像有人在翻他三年前的笔记。滚到door.py那一页,停住了。

屏幕角落里,光标自己亮起来,开始打字:

“你终于回来了。”

“……你谁?”沈夜说,“报个工号。”

光标停了一秒。屏幕里传出一声很轻的、像是笑又像是叹息的声音:

“你忘了。”

“我是最后一个,还在维护这段代码的人。”

沈夜的手放在键盘上,没有动。他没有碰键盘,但屏幕上的光标,又开始自己动起来。

“门是好的。”它打道,“门一直很好。你该担心的,不是门。”

“该担心什么?”

光标在屏幕上顿了很久。

“你忘掉的东西,正在吃你。”

“……你是它?”

“不是。”光标打了两个字,停住了,像在犹豫要不要说更多,“我是你留在门后面的东西。”

“三年前,你说过一句话,让我等你。”

“你说:‘快了,就快修好了。’”

沈夜的后背,一点点凉了下来。

他想起了打印店。想起那扇卷帘门。想起自己站在门口,对什么人说过同样的话:“快了,就快修好了。”

“……打印店。”他问,“你是打印店里的那个?”

光标没有回答。

屏幕上的代码,像被一只手按住了,一行一行停下来,停回了door.py。最后,屏幕上只剩下那行注释:

if(you_are_ok()){微笑();}

然后,光标在注释下面,补了一行字:

“第七层,等你。”

“带上你的队友。这次,别一个人来。”

屏幕一黑。

沈夜坐在黑暗里,过了很久,才听见自己咽口水的声音。

他重新点亮屏幕。仓库还在,door.py还在,那行注释还在。只是注释下面,多了一行他从来没有写过的代码:memory_lock = True

他盯着这行代码,脑子里“当”了一声。

memory_lock。记忆锁。

“我的记忆……是被人锁上的?”

“不是人。”零号的声音从桌面上传来,她不知道什么时候从芯片里出来了,巴掌大的小人坐在硬盘盒上,绿色的代码流动着,“是代码。”

“你看到了?”

“你屏幕亮的时候,我全看到了。”零号说,“沈夜,那不是普通代码。那行memory_lock,是写在你记忆里的,有人用代码,锁住了你的一部分记忆。”

“谁写的?”

零号沉默了。

“……从风格上看,”她说,“写得跟你一模一样。”

第二天晚上,三个人坐在沈夜的出租屋里。

茶几上摊着三样东西:零号画的坐标线、林小雪的泪痣记录、沈夜打印出来的git log。

“规则碎片在画一条线。”零号指着坐标线,“这条线的终点,在这里,城南,幸福路,废弃打印店。”

“泪痣发烫的方向,也指向那里。”林小雪说,“我第一天记的偏北11秒,对着的就是那个方向。”

沈夜把git log摊在桌上,指着那个陌生ID:“这个署名,我三年前,大概率是跟他一起写的这段代码。我的记忆被锁了,锁得很干净,但我身体还记得他。”

“名字会暴露在规则里。”林小雪说,“你连喊他两声‘老周’了,他可能已经‘知道’你在找他。”

“……那正好。”沈夜说,“我也想知道,他到底是谁。”

三个人对视了一眼。

“打印店。”零号说,“所有线索,都指向那家打印店。”

“它可能不是打印店。”沈夜说,“它可能是那扇门在现实里的入口。”

他站起来,把打印出来的git log折好,塞进口袋。

“明天晚上,我们过去看看。”

“等等。”林小雪忽然说,“如果那家打印店,真的是入口,那它门口,会不会也贴着规则?”

沈夜想了想。

“那正好。”他说,“我修了这么多年bug,最擅长的,就是读规则。”

他顿了顿,又补了一句:

“尤其是那种,写得像人话的规则。”

窗外,城南的方向,一家废弃打印店的卷帘门,在夜里自己卷起了一半。

卷帘门后面,是黑的。

像一台,关机的屏幕。