尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。
Object evolution is a monotonic approach to typestate and object reclassification, enforcing that objects may gain, but not lose properties, to permit aliasing. We present a formalization and prototype implementation of our new language May , featuring inheritance-based evolution that changes the run-time class of an object to a subclass. To statically guarantee evolution succeeds, we introduce a simple affine permission system for ensuring evolvable references match the run-time type of an object. Furthermore, we demonstrate that our system provides an effective and type-safe way of expressing staged operations and complex initialization procedures.
DOI 原文 ·
@article{paperbot3786,
title = {Type-Safe Monotonic Object Evolution},
author = {Alexandra Mirrlees-Black and Haoyu Wu and Gregor Richards and Fabian Muehlboeck},
journal = {Proceedings of the ACM on Programming Languages},
volume = {10},
number = {OOPSLA1},
year = {2026},
doi = {10.1145/3798252}
}