Primarily involved in Rust with IDE support and tooling (helps maintain RLS since mid-2017). Being a good Rustacean, he decided to use his bachelor’s thesis group project as a good excuse to support the ecosystem work on Servo, where he managed to tame C++ dragons and JavaScript spider monkeys using nothing but the power of oxidation.
This talk will focus on some of the challenges encountered while working on integrating SpiderMonkey JavaScript engine with the Servo web browser engine (written in C++ and Rust, respectively). We will explore how Rust’s rich type system made it possible to enforce many Servo–SpiderMonkey interface rules and safety considerations at compile time and how a custom compiler plugin was developed to verify against project-specific errors at a language level.