对话-和声小迷宫
《和声小迷宫》这篇对话是书中对概念-递归最生动、最直接的展示。它通过一个层次不断嵌套的故事,形象地解释了“推入”(push)、“弹出”(pop)和“堆栈”(stack)等递归的核心机制。
什么是递归?对话《和声小迷宫》已经展示了:递归就是嵌套,各种各样的嵌套。
对话的递归结构
在对话中,人物-阿基里斯和人物-乌龟的历险层层深入,他们从一个现实层次“推入”到另一个现实层次:从直升机上,到艾舍尔的画中,再到画中人正在阅读的书本里。这种“故事里的故事”的结构,要求读者在脑中维持一个“心理堆栈”来跟踪当前所在的叙事层次。
在那个对话中,阿基里斯和乌龟在各个不同的层次中都出现了,有时作为角色出现在他们正在阅读的故事里。这时你可能对正在发生的事情有点糊涂,必须高度集中注意力,才可能弄明白。
要想把握对话中递归的回溯机制,你的意识中必须得有一个心理堆栈。
音乐中的递归
对话的标题和内容都与音乐中的递归紧密相关。书中提出,我们对音乐的欣赏过程本身就是递归的,尤其是在处理调性转换时。听众会在无意识中维持一个调子的堆栈,当音乐从主调(全局调性)转到其他调(局部调性)再转回来时,就发生了调性的“推入”和“弹出”。
我们递归地听音乐——特别是,我们保持一个关于调子的心理堆栈,每一个新的变调都把一个新的调子推上堆栈。进一步说,这就像是我们想听到调子以相反的顺序,从堆栈中一个一个地弹出,直到还原到主调音。
对话的标题本身也来自人物-约翰·塞巴斯蒂安·巴赫的一首同名管风琴曲。这首曲子以其复杂的和声与频繁的转调而著称,其目的就是让听众在调性的“迷宫”中迷失方向,无法轻易找到返回主调的路径,从而在音乐上模拟了递归堆栈过深时可能导致的迷失感。
《和声小迷宫》原作是巴赫的一支曲子。在这支曲子里,巴赫试图让听众在调子急剧变换的迷宫中迷失方向。很快,听众就晕头转向,没有任何方向感了——听众不知道真正的主调音在哪里。