咒法学学习手记(二):转义与元运行
内省、考察与反思
内省、考察与反思这三个图案可以说是所有图案中最为特殊的三个。大部分的操作都是操作栈与世界,而这三个则是改变施法时的“状态”。
一般说来,图案在被绘制后便会执行。而如果在那之前绘制了考察或者内省,后续绘制的图案会变成黄色,标志着它们被“转义“了。
所谓的“转义”,也就是让 Iota 失去原本的意思,不执行其所对应的操作,而是作为一个单纯的 Iota 被压入列表或栈中。
在咒法学中,一切 Iota 都有其意义——或者说,所有 Iota 都对应着一个“操作”,只是大部分 Iota 所对应的“操作”是“抛出一个事故”。因此直接用赫尔墨斯之策略或托特之策略执行的话,就会抛出事故。
赫尔墨斯的秘辛
那么,赫尔墨斯的秘辛就此明了了:
当赫尔墨斯之策略接受一个非列表 Iota 时,会直接执行其对应“操作”;而当其接受一个列表时,会依次执行每一个 Iota 对应的操作,就仿佛是在咒术网格上依次绘制图案。
值得注意的是,列表 Iota 对应的操作也只不过是丢出一个事故,因此形如 iota:list1.json 的列表在赫尔墨斯之策略下也会抛出事故。
转义的用途
转义还有一个用途,便是在图案中嵌入非图案 Iota。最容易想到的是用考察:写成 iota:list2.json 这样的列表。然而考察的优先级高于内省,因此在多层内省、反思中不太好用。
更为一般的转义方法是 iota:list3.json 这样的——先用内省反思对打包成列表,再用群体之拆解拆开列表,将其中元素入栈。
元运行与咒法执行机理
元运行隐藏着咒法学最深层次的奥秘,要理解咒法学,必须要理解元运行。
通过阅读笔记,我们不难看出,赫尔墨斯之策略移除栈顶的一个图案或者图案列表,然后运行它们。这很通俗易懂。然而在这一篇笔记的末尾,又提到了卡戎之策略——它可以用来停止施法,但和直接放下法杖或者事故打断施法又不太一样——它可以用来停下那些“策略”们。
停下“策略”?这是什么说法?图案被元运行所执行和用法杖一个一个绘制到底有什么区别呢?
想要解释明白,必须对咒法执行机理有一个基本的认识:
- 对于一次施法来说,用来存放栈、渡鸦之思等基本数据的,叫做咒法映像;
- 而用来储存咒法师将要进行的所有操作的,被称为延续。
用法杖直接绘制施法时,咒法师并没有提前告知自然自己将要做什么操作,所以在这里暂时没有必要考虑延续。
而我们用赫尔墨斯之策略之类的元运行执行图案列表时,会在当前延续中插入一个标记,然后把这些图案列表中的每一个操作都按照顺序插在这个标记后面。这后面所插入的这些将要进行的操作,可以统称为执行帧。这个标记和执行帧一前一后,构成了施法边界。
那么元运行的奥秘就此明了了:赫尔墨斯之策略创建施法边界,压入执行帧;执行帧内部执行到卡戎之策略则会逆延续而上,向上找到赫尔墨斯插入的标记,使边界内的咒术结束,跳出当前元运行的执行帧,再执行后续的其他操作。
拿 iota:d04cdc.json 来说:意识之精思和揭示会被执行,而在卡戎之策略后面的指南针之纯化和揭示则不会执行。
卡戎和托特之策略的配合也差不多:当在托特之策略中遇到卡戎时,会停下托特之策略的遍历,返回到托特的上一级继续运行。
延续、跳转与伊里斯
延续,是人与自然的约定,发自人心而被铭刻于自然的伟岸身躯之上的宏伟蓝图。直白点说,延续是将要被执行的那些操作们。
当我用法杖一个一个的绘制图案时,延续为空,因为自然并不知道我将要绘制什么图案。而当我借由赫尔墨斯之策略这种元运行来执行操作时,我便与自然定下约定:“我将如此操作。“这约定的将要执行的一系列操作的序列,便是延续。
像是赫尔墨斯之策略、托特之策略这样的元运行,是向延续中填入新的执行,同时会标记哪一部分延续是由它们填入。卡戎之策略正是凭借这个标记得以从元运行中脱身。
伊里斯之策略更为巧妙,它会在像赫尔墨斯之策略一样执行图案或图案列表之前,先将在它之后将要执行的所有操作封装入一个独特的“跳转” Iota 中,那之后再执行它所接受的那个图案或图案列表。
如果“跳转” Iota 被执行,将立刻终止当前咒术,用其内部所记录的要执行的操作,覆盖掉本来将要执行的操作。举个例子,我们可以把这个咒术按伊里斯之策略的位置拆分成两节:前者(iota:6b85dd.json)照常执行,后者(iota:aa9bc9.json)被打包进“跳转” Iota。当我们需要退出这次策略的执行时,只需要利用栈操作把这个“跳转” Iota 提到栈顶,然后执行之。这样,被保存的操作覆盖了原来要进行的操作,这就是所谓的“跳转”。