Creator:
Date:
Abstract:
Rust is a new programming language developed by Mozilla in response to the fact that C and C++ are unsafe, inefficient, and unergonomic --particularly when applied to concurrency. Version 1.0 of Rust was released in May 2015, and appears to be performing excellently. Rust code is memory-safe by default, faster than C++, easier to maintain, and excels at concurrency. Yet little analysis exists of the semantics and expressiveness of Rust's type system. This thesis focuses on one of the core aspects of Rust's type system: ownership. Ownership is a system for expressing where and when data lives, and where and when data can be mutated. In order to understand ownership and the problems it solves, we provide a novel analysis of both in terms of trust.