苏念归学得快,连苏念安都没料到。
倒不是说她一上来就能激活什么字符——那个还早——是她理解推演术的方式跟别的学生完全不同。别的学生学"生"字符,是死记苏念安讲的"生是起点,是万物之始",背下来,然后照着练。苏念归不这么干。她把"生"字符拆成了笔画结构,在笔记本上画了一个流程图——起笔代表输入条件,运笔路径代表推演逻辑,收笔代表结论输出。
苏念安路过她桌子的时候看了一眼,愣了两秒。
"你画的这是什么?"
"流程图。'生'字符的推演逻辑。妈你看,这一段是判断条件,这一段是递归,如果走到这一步就return,走不到就继续往下推。"
苏念安看了半天,指了指流程图中间的一个节点。"这里不对。推演术没有'else'。"
"那走不通怎么办?"
"走不通就换一个字符重新起盘。推演术不是一条路走到黑,是开了几条路同时走,哪条通走哪条。"
"那不就是多线程?"
"什么线程?"
"就是——并行处理。多个任务同时跑。"
苏念安看着她,嘴角动了一下。"你外婆要是看到你用代码来理解推演术,她肯定会说'还能这样?'——然后她就会学过去。"
"真的?外婆会学编程?"
"你外婆什么不会学?她七十多岁的时候还在学怎么用手机开直播呢。"
苏念归笑了。她低头继续改她的流程图,把"else"划掉了,在旁边画了几条并行的线,每条线标了一个字符名。
三个月之后,她已经开始做简单的推演案例了。学校里有一个传统——每学完一个阶段,学生要做一个实际案例,给一个真实的人做一次推演。苏念归分到的案例是帮一个开面馆的中年男人找他走丢的猫。
别的学生拿到这种案例,第一反应是摆推演盘,激活"寻"字符。苏念归没有。她先问了那个男人三个问题——猫是什么品种,多大,最后一次看到是在哪。然后她在笔记本上画了一张地图,标出面馆的位置和猫可能去的几个方向。
"你这不像是推演,像是侦探。"旁边的同学说。
"推演不就是侦探吗?"苏念归头也没抬。"我外婆说过,推演术的本质是观心。猫的心你观不了,但猫的习惯你能推。它平时几点出门,走哪条路,在哪个垃圾桶旁边蹲过——这些都是数据。有数据就能建模。"
她最后找到了那只猫。不是靠推演盘——她还没到能激活"寻"字符的程度——是靠她在地图上标注的几个点,然后挨个去蹲,蹲了两天,在面馆后面第三条巷子的一个废弃纸箱里找到了。
那个中年男人高兴得要给她免单,说"以后你来吃面永远免费"。
苏念归跟苏念安汇报这个案例的时候,苏念安听完没说好也没说不好,只是问了一句——"你觉得推演盘在这个过程中起了什么作用?"
苏念归想了想。"没起作用。我没用它。"
"那你觉得这算推演吗?"
"算吧……不算?"
"算。"苏念安把茶杯放下。"推演盘是工具,不是推演本身。你外婆用了四十年推演盘,但她最强的推演——磨憨那一次——是离开推演盘做的。工具是拐杖,能走路了就该扔。但你还没到能扔的时候,所以继续练盘上的字符。"
"知道了。"
苏念安看着苏念归用代码思维解构推演术的那些笔记本——上面画满了流程图、树状图、数据结构示意图——她突然意识到一个可能。也许推演术的下一阶段,不是靠天赋。苏瑶有天赋,苏念安有天赋,苏念归的天赋未必比她们强。但苏念归有一样她们没有的东西——她能把玄学和逻辑结合起来。
苏念安拿起苏念归的笔记本翻了翻,翻到最后一页,看到苏念归画的一张图——把推演盘上的七个字符画成了一个树状结构,"生"是根节点,"启"和"封"是叶节点,中间用线连起来,每条线上标着条件判断。
她盯着那张图看了很久,然后用手指点了点"启"字那个节点。
"这个节点你画在了最末端。"
"对,因为它需要前面所有条件都满足才能触发。"
"那你知不知道,在你太外婆苏秀兰最初设计推演盘的时候——'启'不是末端,它是中心。"
苏念归的笔停在半空。她低头看了看自己画的树状图,又看了看苏念安。
"中心?那其他六个字符是围着它转的?"
"对。你把图画反了。不是从'生'到'启',是从'启'到'生'。"
苏念归把笔记本翻回前面,拿起橡皮开始擦那张树状图。橡皮屑掉了一桌子,白色的碎屑落在深色的桌面上。
