RustLIVE: Reducing the Learning Barriers of Rust Through Visualization
This innovative practice full paper introduces an independent learning tool for the Rust programming language. Secure software begins with secure memory management as over 65% of software vulnerabilities in modern code bases are the result of memory safety problems. Rust is a promising memory safe language that is rapidly gaining traction as a replacement for C and C++ in systems software. However, Rust is challenging due to its novel approach to memory safety. The Rust programming paradigm is focused on the principles of ownership and borrowing. These concepts effectively achieve memory and thread safety but are enforced at compile-time, enabling run-time performance comparable to C but posing significant implementation challenges for students and even experienced programmers. We propose an innovative visualization tool, RustLIVE, that clearly depicts the most difficult concepts of the Rust language. RustLIVE is an extension for VSCode, the IDE of choice for over 60% of Rust developers. Seamlessly integrated with the Rust compiler and its borrow checker, RustLIVE requires no code annotations. Instead, it extracts necessary information directly from the compiler to provide color-coded visual timelines that illustrate the ownership of memory resources and the liveness of borrows. RustLIVE is an innovative, independent learning tool that helps learners form a correct mental model, avoid unsafe code and improve student experience.
Authors
- Kyu Hyoung Lee (ORCID: https://orcid.org/0000-0001-6843-6706)
- Mustakimur Rahman Khandaker (ORCID: https://orcid.org/0000-0003-1854-3794)
- Diane Beightol Stephens
Institutions
- University of Georgia (US)
Publication Details
- Published
- 2024-10-13
- DOI
- https://doi.org/10.1109/fie61694.2024.10893207
- Primary Topic
- Forest Biomass Utilization and Management
- Type
- article
- Field-Weighted Citation Impact
- 0.00