2021 年 11 月 28 日,由编程语言社区举办的 SIG-类型系统技术沙龙通过线上直播方式举办。
SIG-类型系统 旨在建设一个针对编程语言类型系统技术领域学习、分享、成长的平台,吸引并聚集对类型系统相关核心技术有所研究、有所建树的专家、学者以及对学习类型系统相关技术拥有热情的学生们。当前已加入多名核心成员,分别代表企业技术专家、学术界研究学者、学生群体与用户群体等。
SIG 介绍:https://gitee.com/HW-PLLab/community/tree/master/sigs/SIG-TypeSystem
詹博华老师为我们带来了精化类型(refinement types)的介绍,从我们为什么引入精化类型,到其基本原理的介绍,并结合具体的例子,向我们演示了如何借助 SMT 和 Horn 求解器对精化类型进行类型检查和类型推导。
李屹博士从为什么需要类型系统开始,介绍了类型系统对编译器和程序员的重要性,并以为 Python 实现 Trait 为例,展示了他们如何以一种非侵入式的方式对 Python 的类型系统进行定制化扩充。
陈泓旭博士介绍了将类型系统的思想应用在 Android 权限检查上的相关工作。通过借鉴 Banerjee and Naumann 相关的类型系统工作,为 Android 设计了一个轻量类型系统,从而可以通过命令式的编程语言强制执行安全信息流,实现应用权限访问控制的静态分配。
阚双龙博士向我们介绍了 Rust 作为一门新兴的系统级编程语言,其所有权和借用系统(OBS)的特性,并以图的方式从新的角度来对 Rust 的 OBS 模型进行形式化的描述。此外,阚博还与大家探讨了将 Rust 的 OBS 模型应用到 C 语言的可能性,从而提高 C 语言的内存安全。
同时需要感谢编程语言社区的志愿者,来自中南大学的博士生沈航,积极报名作为本次线上沙龙的主持人,出色地完成了本次线上技术沙龙的主持工作,也希望有更多的社区小伙伴来参与社区共建。