- 💬 写在前面:本篇我们继续讲解类型引用,两个步骤的第一个步骤。这一篇我们将讲解第二个步骤 —— 解生成方程。这一次,我们将不再步履虚空,先引一个运行示例进行讨论,然后再展开介绍实际算法。
目录
0x02 解方程:定义两个函数 Unify() 和 Extend()
0x03 总体算法:运行 𝑻𝒚𝒑𝒆𝑰𝒏𝒇𝒆𝒓(let f g = 1 + g 2 in f)
0x00 构建替换:𝒕 → T
让我们构建一个替换 (从 到
的映射) :
让我们逐个将方程式从左侧移到右侧,我们得到的最终替换就是方程的解:
①
②