Rust Search

Find the best content on Rust, curated by the community; a search engine for Rustaceans.
blog.yoshuawuyts.com
introduction in-place construction indirect in-place construction future possibilities the connection to super let conclusion introduction I've been thinking a little bit about self-referential types recently, and one of its requirements is...
Observations/Thoughts 2024-06-26 ~9 min read
blog.yoshuawuyts.com
In program language design I'm a big fan of features which fall out of other, more general features. People occasionally talk about both "unleakable" and "undroppable" types. I see a lot of value in "unleakable" types because if a type is "...
Observations/Thoughts 2024-06-05 ~4 min read
blog.yoshuawuyts.com
preface: concurrent and parallel execution tasks are the wrong abstraction for parallel async execution tasks are the wrong abstraction for concurrent async execution stealing and sending sharded send bounds parallel futures and send bounds...
Observations/Thoughts 2024-05-01 ~22 min read
blog.yoshuawuyts.com Archived: primary link replaced with an archive on 2026-09-12T11:35:04.647Z (UTC; replacement date, not snapshot date)
Shipping Jco 1.0, WASI 0.2— 2024-04-03 On this blog I usually post about technical explorations in programming languages, API design, asynchronous computing, and so on. More recently I've re-started my work on WebAssembly, WASI, and their i...
Project/Tooling Updates 2024-04-10 ~6 min read
blog.yoshuawuyts.com
introduction rust without generics why effect generics? stage i: effect-generic trait definitions stage ii: effect-generic bounds, impls, and types what are effects? stage iii: more effects outro This is the transcript of my RustConf 2023 t...
Observations/Thoughts 2024-02-14 ~24 min read
blog.yoshuawuyts.com
Will it block?— 2024-02-07 Will this function block? fn work(x: u64, y: u64) -> u64 { x + y } How about this function? fn work(x: u32) -> u32 { let mut prev = 0; let mut curr = 1; for _ in 0..x { let next = prev + curr; prev = curr; curr =...
Observations/Thoughts 2024-02-07 ~3 min read
blog.yoshuawuyts.com
Iterator as an Alias— 2023-11-08 iterators vs coroutines iterators as an alias for coroutines fallible functions support for pin conclusion This is another short post covering another short idea: I want to explain the mechanics required to...
Observations/Thoughts 2023-11-15 ~8 min read
blog.yoshuawuyts.com
What is a team?— 2023-11-08 update (2023-11-08): I've swapped the usage of "horizontal" and "vertical" in this post based on feedback. This is going to be an ultra-short post to share an idea I've been mulling over in my head for a while. Y...
Observations/Thoughts 2023-11-15 ~4 min read
blog.yoshuawuyts.com
fn poll_ vs async fn performance self-referential iterators unpin bounds implementation vs usage object safety "cancellation safety" pin ergonomics evolution conclusion This post is part of the Async Iteration series: Async Iteration I: Asy...
Observations/Thoughts 2023-10-04 ~29 min read
blog.yoshuawuyts.com
nesting allocators— 2023-08-09 kinds of allocation nesting allocators passing allocators scoped allocators conclusion I regularly point people to Tmandry's 2021 post "Contexts and Capabilities in Rust". While nobody is actively working on t...
Observations/Thoughts 2023-08-09 ~9 min read
blog.yoshuawuyts.com
Totality— 2023-07-20 total functions functions which cannot panic functions which guarantee termination const functions evolving totality conclusion Recently Eric and I have been chatting with Daan Leijen, of Koka fame, discussing among oth...
Observations/Thoughts 2023-07-26 ~13 min read
blog.yoshuawuyts.com
fuzzing vs property testing structured inputs heckcheck: property testing using arbitrary automated testing strategies conclusion It's been over three years since Fitzgen published: "Announcing Better Support for Fuzzing with Structured Inp...
Observations/Thoughts 2023-07-12 ~9 min read
blog.yoshuawuyts.com
what is structured concurrency? unstructured concurrency: an example structured concurrency: an example what's the worst that can happen? applying structured concurrency to your programs pattern: managed background tasks guaranteeing struct...
Observations/Thoughts 2023-07-05 ~15 min read
blog.yoshuawuyts.com
What is WASI?— 2023-06-02 introduction what is webassembly? bytecode, webassembly, and the jvm what are webassembly components? what is wasi? categorizing webassembly iterating on wasi the future of wasi conclusion appendix a: terminology c...
Rust Walkthroughs 2023-06-07 ~12 min read
blog.yoshuawuyts.com
Pattern Extensions— 2023-05-26 shapes of types pattern initializers pattern matching pattern types the "is" keyword on product patterns on string patterns conclusion Microsoft Build is happening this week, and with it come new announcements...
Observations/Thoughts 2023-05-31 ~12 min read
blog.yoshuawuyts.com
Linearity and Control— 2023-03-23 introduction what are linear types? create and consume linear types linear functions linear contexts linear methods linear drop control control points liveness abort points async and linearity cycles and sa...
Observations/Thoughts 2023-03-29 ~33 min read
blog.yoshuawuyts.com
Linear Types One-Pager— 2023-03-28 prior reading what are linear types? a minimal implementation interactions with control flow drawbacks and challenges updates This post represents an overview of an MVP "linear types" design which we could...
Rust Walkthroughs 2023-03-29 ~5 min read
blog.yoshuawuyts.com
a taste of html type-safe html type-safe semantic represenation embracing compilation conclusion If you've been around an industry for long enough you end up with Opinions™ about things. Here's one of mine: I think one of the biggest missin...
Observations/Thoughts 2023-02-08 ~10 min read
blog.yoshuawuyts.com
Capability-Safety I: Prelude— 2023-01-24 introduction capability-safety the plan Introduction In 2021 Tmandry published the post: "Contexts and Capabilities". In it they present the idea of with-clauses, providing a means of passing types s...
Observations/Thoughts 2023-01-25 ~3 min read
blog.yoshuawuyts.com
what is ensure? pairing errors with macros new keywords stdlib conclusion When I write custom errors in a project, I also like to write a few small error macros to accompany them. In my opinion this can make error handling just a little nic...
Rust Walkthroughs 2023-01-25 ~4 min read
"If there’s a backdoor attack lurking in the crates ecosystem, then it’s lurking pretty deep at present. The popular crates that we all rely on day..."

Search tips

Type anything to search across articles, videos (including conference talks), podcasts, research, crates, and Rust API documentation. These operators give you finer control — click an example to try it.

Find pages containing all your words. Pages where the words appear together rank higher.
Quote part of your query to keep those words together as an exact phrase within a larger search.
Wrap the whole query in quotes for a verbatim search that matches text exactly, punctuation and all — perfect for Rust syntax. Needs at least 3 characters.
Put ! first to open the top result immediately. Quote the whole query for a literal leading bang, as in '!Send'. Bangs elsewhere, such as println!, stay literal. Browser and launcher shortcuts can invoke this directly. See search integrations.
Limit results to a single site. Works on its own () too. One site: per search.

Use the tabs and filters above the results to narrow by content type, publication year, and sort order.