RustViz: Interactively Visualizing Ownership and Borrowing

18 Nov 2020  ·  Gongming Gabriel, Luo, Reddy Vishnu, Almeida Marcelo, Zhu Yingying, Du Ke, Omar Cyrus ·

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.

PDF Abstract

Categories


Programming Languages

Datasets


  Add Datasets introduced or used in this paper