Rust 语言能否添加细化类型?
2024-12-24
本文探讨了在 Rust 语言中添加细化类型的可能性。作者基于其先前开发的静态分析器 YAIOUOM (一个使用细化类型检查单位的例子) 的经验,分析了如何在 Rust 类型系统中实现细化类型,并提出了几种方案:通过调整 trait 解析、类型变量统一或引入可插拔关键字等方式,在编译过程的后期阶段进行类型检查。作者认为,乐观型方案(在编译早期阶段忽略单位信息,后期再进行检查)更可行,并讨论了 API 设计和错误消息处理等问题。最终,作者指出后续工作包括收集反馈、编写支持插件的 rustc 驱动程序以及实现几种细化类型。
阅读更多
开发
细化类型