English

RustViz: Interactively Visualizing Ownership and Borrowing

Programming Languages 2020-11-19 v1

Abstract

Rust is a systems programming language that guarantees memory safety without the need for a garbage collector by statically tracking ownership and borrowing events. The associated rules are subtle and unique among industry programming languages, which can make learning Rust more challenging. Motivated by the challenges that Rust learners face, we are developing RustViz, a tool that allows teachers to generate an interactive timeline depicting ownership and borrowing events for each variable in a Rust code example. These visualizations are intended to help Rust learners develop an understanding of ownership and borrowing by example. This paper introduces RustViz by example, shows how teachers can use it to generate visualizations, describes learning goals, and proposes a study designed to evaluate RustViz based on these learning goals.

Keywords

Cite

@article{arxiv.2011.09012,
  title  = {RustViz: Interactively Visualizing Ownership and Borrowing},
  author = {Gongming and Luo and Vishnu Reddy and Marcelo Almeida and Yingying Zhu and Ke Du and Cyrus Omar},
  journal= {arXiv preprint arXiv:2011.09012},
  year   = {2020}
}

Comments

9 pages, 3 figures. Presented at HATRA 2020 (Human Aspects of Types and Reasoning Assistants)

R2 v1 2026-06-23T20:19:58.662Z