smallcultfollowing.com
I believe that AI-powered development tools can be a game changer for Rust—and vice versa. At its core, my argument is simple: AI’s ability to explain and diagnose problems with rich context can help people get over the initial bump of lear...
Observations/Thoughts
2025-02-12
~19 min read
smallcultfollowing.com
This post lays out the idea of preview crates.1 Preview crates would be special crates released by the rust-lang org. Like the standard library, preview crates would have access to compiler internals but would still be usable from stable Ru...
Observations/Thoughts
2025-02-05
~8 min read
smallcultfollowing.com
This post floats a variation of boats’ UnpinCell proposal that I’m calling MinPin.1 MinPin’s goal is to integrate Pin into the language in a “minimally disruptive” way2 – and in particular a way that is fully backwards compatible. Unlike Ov...
Observations/Thoughts
2024-11-06
~19 min read
smallcultfollowing.com
In July, boats presented a compelling vision in their post pinned places. With the Overwrite trait that I introduced in my previous post, however, I think we can get somewhere even more compelling, albeit at the cost of a tricky transition....
Observations/Thoughts
2024-10-16
~31 min read
smallcultfollowing.com
What would you say if I told you that it was possible to (a) eliminate a lot of “inter-method borrow conflicts” without introducing something like view types and (b) make pinning easier even than boats’s pinned places proposal, all without...
Observations/Thoughts
2024-10-02
~17 min read
smallcultfollowing.com
This is the first of what I think will be several follow-up posts to “Claiming, auto and otherwise”. This post is focused on clarifying and tweaking the design I laid out previously in response to some of the feedback I’ve gotten. In future...
Observations/Thoughts
2024-07-03
~7 min read
smallcultfollowing.com
This blog post proposes adding a third trait, Claim, that would live alongside Copy and Clone. The goal of this trait is to improve Rust’s existing split, where types are categorized as either Copy (for “plain old data”1 that is safe to mem...
Observations/Thoughts
2024-06-26
~17 min read
smallcultfollowing.com
This post lays out a 4-part roadmap for the borrow checker that I call “the borrow checker within”. These changes are meant to help Rust become a better version of itself, enabling patterns of code which feel like they fit within Rust’s spi...
Observations/Thoughts
2024-06-05
~14 min read
smallcultfollowing.com
I’ve been thinking a wild thought lately: we should deprecate panic=unwind. Most production users I know either already run with panic=abort or use unwinding in a very limited fashion, basically just to run to cleanup, not to truly recover....
Observations/Thoughts
2024-05-08
~8 min read
smallcultfollowing.com
Extern types have been blocked for an unreasonably long time on a fairly narrow, specialized question: Rust today divides all types into two categories — sized, whose size can be statically computed, and unsized, whose size can only be comp...
Observations/Thoughts
2024-04-24
~10 min read
smallcultfollowing.com
Ownership is an important concept in Rust — but I’m not talking about the type system. I’m talking about in our open source project. One of the big failure modes I’ve seen in the Rust community, especially lately, is the feeling that it’s u...
Observations/Thoughts
2024-04-10
~6 min read
smallcultfollowing.com
Well, it’s that time of year, when thoughts turn to…well, Rust of course. I guess that’s every time of year. This year was a pretty big year for Rust, though I think a lot of what happened was more in the vein of “setting things up for succ...
Observations/Thoughts
2024-01-10
~8 min read
smallcultfollowing.com
To your average Joe, being “rusty” is not seen as a good thing.1 But readers of this blog know that being Rusty – with a capitol R! – is, of course, something completely different! So what is that makes Rust Rust? Our slogans articulate key...
Observations/Thoughts
2023-12-13
~8 min read
smallcultfollowing.com
Lately I’ve been iterating on an idea I call project goals. Project goals are a new kind of RFC that defines a specific goal that a specific group of people hope to achieve in a specific amount of time – for example, “Rusty Spoon Corp propo...
Observations/Thoughts
2023-11-29
~17 min read
smallcultfollowing.com
A few years back, the Async Wg tried something new. We collaboratively authored an Async Vision Doc. The doc began by writing “status quo” stories, written as narratives from our cast of characters, that described how people were experienci...
Observations/Thoughts
2023-10-25
~11 min read
smallcultfollowing.com
I’m on the plane back to the US from Belgium now and feeling grateful for having had the chance to speak at the EuroRust conference1. EuroRust was the first Rust-focused conference that I’ve attended since COVID (though not the first confer...
Miscellaneous
2023-10-18
~13 min read
smallcultfollowing.com
In the previous Polonius post, we formulated the original borrow checker in a Polonius-like style. In this post, we are going to explore how we can extend that formulation to be flow-sensitive. In so doing, we will enable the original Polon...
Observations/Thoughts
2023-10-04
~13 min read
smallcultfollowing.com
Rust helps you to build reliable programs. One of the ways it does that is by surfacing things to your attention that you really ought to care about. Think of the way we handle errors with Result: if some operation can fail, you can’t, ahem...
Observations/Thoughts
2023-10-04
~8 min read
smallcultfollowing.com
lqd has been doing awesome work driving progress on polonius. He’s authoring an update for Inside Rust, but the TL;DR is that, with his latest PR, we’ve reimplemented the traditional Rust borrow checker in a more polonius-like style. We are...
Observations/Thoughts
2023-09-27
~14 min read
smallcultfollowing.com
One of Rust’s core principles is “stability without stagnation”. This is embodied by our use of a “release train” model, in which we issue a new release every 6 weeks. Release trains make releasing a new release a “non-event”. Feature-based...
Observations/Thoughts
2023-09-20
~26 min read