功能机器演算
摘要:函数性机器演算(FMC)是一种高阶计算的简单模型,具有"读者/写者"效果:高阶可变存储、输入/输出以及概率和非确定性计算。FMC源于λ演算,通过采用按名调用的堆栈机的标准操作视角作为主要视角,并引入了两个自然的概括。其中一个是"位置",引入了多个堆栈,每个堆栈可以表示一个效应,因此能够将效应操作符编码到演算的抽象和应用构造中。第二个是"序列",从kappa演算和拼接编程语言中已知,引入了"空操作"和"序列"的命令概念。这使得可以编码规约策略,包括按值调用的λ演算和单子构造。将效应编码到广义抽象和应用中意味着λ演算的标准结果可以扩展到效应。主要结果是可合流性,这是可能的,因为编码的效应在代数上而不是操作上减少。规约生成了状态的熟悉的代数定律,并且与单子设置不同,读者/写者效应无缝组合。简单类型系统保证了机器的终止性。
作者:Willem Heijltjes
论文ID:2212.08177
分类:Programming Languages
分类简称:cs.PL
提交时间:2023-06-22