Portable Memory Management Toolkit in Rust Zixian Cai, Brenda Wang, Pavel Zakopaylo Australian National University Memory Management Toolkit (MMTk) is a high-performance and flexible research GC framework. These properties enable researchers to conduct credible performance evaluation and explore new ideas. However, it is originally written in a dialect of Java, and thus is not easily portable to other VMs. Therefore, we want to make a VM-agnostic version of the framework in Rust, bringing the benefits to more platforms. Lin et al. showed that Rust is a viable language for high-performance GC by building Immix. However, the challenge part of this work is how hierarchies of GC components can be expressed without relying on inherence. With trait-based polymorphism, we use composition to facilitate code reuse. Importantly, this is done without sacrificing performance through zero-cost abstractions provided by Rust's type system. In addition, we designed a pattern that allows low overhead collaboration between the collector and clients across language boundaries. We have integrated Rust MMTk to JikesRVM, with other ports to clients, such as OpenJDK and V8, underway. On JikesRVM, we successfully support non-trivial workloads, such as the DaCapo benchmarks. In addition, we demonstrate performance on par with the original MMTk. The results suggest that building a high-performance and flexible GC framework in Rust is viable. Moreover, the pattern we developed to efficiently express components of VMs can be adopted in more general system programming contexts.