Dec 06, 2019

Legacy problems require modern solutions

Microsoft Project Verona

Microsoft revealed a secret project to create a new Rust-like language as the company looks to modernize its legacy codebase. Dubbed Project Verona, Microsoft’s new tool is a systems programming language designed to integrate new code with old, unsafe legacy code.

The great Rust experiment. Earlier this year, Microsoft embarked on a set of tests to better understand how it could use Rust to replace C and C++ throughout its codebase.

Rust is one of the most widely-loved programming languages—winning most-loved programming language every year for the last fours years in the Stack Overflow survey—and one of the fastest growing programming languages—growing 235% over the last year according to GitHub’s State of the Octoverse.

Rust offers a host of security improvements over C and C++. Most bug fixes issued for Windows—roughly 70% of yearly patches—are related to memory safety, problems which Rust can help avoid. Rust’s design could save Microsoft time, resources, and developer headaches.

How does Project Verona fit in? Microsoft is considering rewriting targeted parts of its codebase with Rust, but that still leaves its engineering teams to juggle millions of lines of existing legacy code.

Project Verona will use its new Rust-like language to carve up these legacy bits of code and compartmentalize them so attackers’ code can’t escape. That way Microsoft can maintain its legacy baggage safely and securely, without necessarily rewriting everything.

C and C++ have long reigned supreme, but with Microsoft’s placing, the future could look a lot more Rust-y.

Want to get more of these in your inbox?

Subscribe for weekly updates from the Software team.