Sitemap

Member-only story

Is Rust 2.0 Needed? The Features Changing Rust From the Inside

View types, pattern types, linear types, Polonius, and the new trait solver, explained in plain language.

6 min read3 days ago

--

Press enter or click to view image in full size
AI-generated image created for illustration purposes.

Every few months, someone on the Rust subreddit asks whether it’s time for a “Rust 2.0,” given everything language designers have learned since Rust was first built more than a decade ago.

I think that question has a better answer than “start over.” Rust is changing from the inside, and the changes are bigger than most people realize.

This article is based on a 2026 talk by Josh Triplett, one of the designers and maintainers of Rust, covering features currently in development. I’ll explain each feature in simple terms, show why it exists, and give my own view on what matters most. Three of these features are still in progress, and two are close to landing in stable Rust.

1. View Types: Borrowing Only the Part You Need

If you’ve written Rust for a while, you’ve probably hit this frustrating error. Here is a small example:

struct Foo {
a: i32,
b: i32,
}

fn increment_b(foo: &mut Foo) {
foo.b += 1;
}
fn main() {
let mut foo = Foo { a: 0, b: 0 };
let a = &mut foo.a; // mutable borrow of…

--

--

Naro
Naro

Written by Naro

Software developer & tech writer sharing practical insights on programming, AI, and modern software engineering.