灵活恢复唯一性与不可变性(扩展版)
编程语言
2018-07-20 v2
摘要
我们提出一种命令式对象演算,其中类型带有用于别名与变异控制的限定符注解。相较于类似提案,有两项关键新颖之处。首先,类型系统极具表达力。值得注意的是,它采用“恢复”方法,即利用类型上下文来证成类型的强化,通过允许在存在其他引用时恢复唯一性与不可变性属性,极大提升了其能力。这由一些规则实现,这些规则限制了在已恢复代码段中对这类其他引用的使用。其次,执行由一种非标准操作模型建模,其中限定符的性质可直接在源项上表达,而非作为模仿物理内存的辅助结构上的不变量。形式上,这由引入局部变量声明的块构造实现,其在求值时扮演存储的角色。
引用
@article{arxiv.1807.00137,
title = {Flexible recovery of uniqueness and immutability (Extended Version)},
author = {Paola Giannini and Marco Servetto and Elena Zucca and James Cone},
journal= {arXiv preprint arXiv:1807.00137},
year = {2018}
}