TY - GEN
T1 - VRLifeTime - An IDE Tool to Avoid Concurrency and Memory Bugs in Rust
AU - Zhang, Ziyi
AU - Qin, Boqin
AU - Chen, Yilun
AU - Song, Linhai
AU - Zhang, Yiying
N1 - Funding Information:
∗Linhai Song was supported by NSF grant CNS-1955965.
Publisher Copyright:
© 2020 Owner/Author.
PY - 2020/10/30
Y1 - 2020/10/30
N2 - As a young programming language designed for systems software development, Rust aims to provide safety guarantees like high-level languages and performance efficiency like low-level languages. Lifetime is a core concept in Rust, and it is key to both safety checks and automated resource management conducted by the Rust compiler. However, Rust's lifetime rules are very complex. In reality, it is not uncommon that Rust programmers fail to infer the correct lifetime, causing severe concurrency and memory bugs. In this paper, we present VRLifeTime, an IDE tool that can visualize lifetime for Rust programs and help programmers avoid lifetime-related mistakes. Moreover, VRLifeTime can help detect some lifetime-related bugs (i.e., double locks) with detailed debugging information. A demo video is available at https://youtu.be/L5F_XCOrJTQ.
AB - As a young programming language designed for systems software development, Rust aims to provide safety guarantees like high-level languages and performance efficiency like low-level languages. Lifetime is a core concept in Rust, and it is key to both safety checks and automated resource management conducted by the Rust compiler. However, Rust's lifetime rules are very complex. In reality, it is not uncommon that Rust programmers fail to infer the correct lifetime, causing severe concurrency and memory bugs. In this paper, we present VRLifeTime, an IDE tool that can visualize lifetime for Rust programs and help programmers avoid lifetime-related mistakes. Moreover, VRLifeTime can help detect some lifetime-related bugs (i.e., double locks) with detailed debugging information. A demo video is available at https://youtu.be/L5F_XCOrJTQ.
UR - http://www.scopus.com/inward/record.url?scp=85096187288&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85096187288&partnerID=8YFLogxK
U2 - 10.1145/3372297.3420024
DO - 10.1145/3372297.3420024
M3 - Conference contribution
AN - SCOPUS:85096187288
T3 - Proceedings of the ACM Conference on Computer and Communications Security
SP - 2085
EP - 2087
BT - CCS 2020 - Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security
PB - Association for Computing Machinery
T2 - 27th ACM SIGSAC Conference on Computer and Communications Security, CCS 2020
Y2 - 9 November 2020 through 13 November 2020
ER -