blog.yoshuawuyts.com
introduction integration done right debuggers today towards a coherent experience conclusion Introduction 40% of Rust Developers believe Rust's debugging experience could use improvement. And that's not surprising: when we write code we mak...
Observations/Thoughts
2023-01-18
~6 min read
blog.yoshuawuyts.com
setting the stage where type states run into trouble doing better with enums embedding in structs enum method unification enums as type params enum variant tracking narrowing of state modifications language feature overview conclusion I've...
Observations/Thoughts
2023-01-04
~14 min read
blog.yoshuawuyts.com
my own work rust language work async work miscellaneous other's work rust capabilities systemic safety compilers miscellaneous conclusion It's pretty quiet at work right now, and every other application on my phone is telling me it's time t...
Observations/Thoughts
2022-12-28
~8 min read
blog.yoshuawuyts.com
Rust 2023 (by Yosh)— 2022-12-21 async ambition cohesion automation conclusion Previous posts1: 2018, 2019, 2020, 2021 The core team used to put out a yearly call for blog posts. My colleage Nick published their "Rust in 2023" post last week...
Observations/Thoughts
2022-12-28
~7 min read
blog.yoshuawuyts.com
Keywords II: Const Syntax— 2022-10-26 always-const execution never-const execution maybe-const execution const traits the need for always-const bounds the need to specialize summary: what is const? back to the drawing board conclusion On th...
Observations/Thoughts
2022-11-02
~14 min read
blog.yoshuawuyts.com
Inline Crates— 2022-10-25 what are crates? what are modules? comparing modules and crates in-line modules example implementation future directions pub crate wasi components conclusion People sometimes jest that Rust is just ML dressed up to...
Rust Walkthroughs
2022-10-26
~12 min read
blog.yoshuawuyts.com
Why Async Rust— 2022-09-26 language hierarchy async under the hood rust's async features ad-hoc cancellation ad-hoc concurrency combining cancellation and concurrency performance: workloads performance: optimizations ecosystem conclusion A...
Observations/Thoughts
2022-09-28
~16 min read
blog.yoshuawuyts.com
async let in swift join in rust join ergonomics other operations fallibility conclusion On Thursday this week Rust 1.64 will be released, and in it it will include a stabilized version of IntoFuture. Much like IntoIterator is used in the de...
Observations/Thoughts
2022-09-21
~9 min read
blog.yoshuawuyts.com
the case for state machines representing state machines in rust in the future ergonomics: overview ergonomics: merging self-types ergonomics: merging return types tying it together conclusion In the past I've written about state machines in...
Observations/Thoughts
2022-08-24
~20 min read
blog.yoshuawuyts.com
Keywords I: Unsafe Syntax— 2022-07-09 two meanings of unsafe bringing it back to traits do we have options? okay, so what if we start coloring outside the lines? but owo there's more! going even further? conclusion Last week Oli and I were...
Observations/Thoughts
2022-07-13
~11 min read
blog.yoshuawuyts.com
timer basics cancelling execution at a distance delaying execution throttling execution conclusion For the past few years I've been working on the async-std library, which provides an async implementation of the APIs exposed by std. However...
Rust Walkthroughs
2022-06-15
~9 min read
blog.yoshuawuyts.com
Postfix Spawn— 2022-03-04 structured concurrency dangling by default async let postfix spawn design considerations conclusion Using a free spawn function to create new tasks has been a staple in async Rust for many years. When we introduced...
Rust Walkthroughs
2022-04-13
~10 min read
blog.yoshuawuyts.com
what are pin projections? view types view types for pin projection ergonomics pin projections and drop #[repr(packed)] unpin pin keyword in other places? conclusion "Pinning" is one of the harder concepts to wrap your head around when writi...
Observations/Thoughts
2022-03-09
~23 min read
blog.yoshuawuyts.com
More Enum Types— 2022-02-15 structs enums anonymous enums type-erased enums comparing enums and structs wrapping up appendix a: examples structs enums appendix b: tables Yesterday I was talking with folks on Zulip about my last blog post, a...
Observations/Thoughts
2022-02-16
~11 min read
blog.yoshuawuyts.com
process concurrently, yield sequentially the futures::select! macro issues with futures::select! modifying "hello world" can lead to data loss halt points are hidden in a macro fuse requirements trait signatures debugging errors is hard sel...
Rust Walkthroughs
2022-02-16
~36 min read
blog.yoshuawuyts.com
Uninit Read/Write— 2021-12-07 showing the problem solution 1: unitialized slices solution 2: uninitialized vectors solution 3: specialization summary The AsyncRead and AsyncWrite traits are async versions of the Read and Write traits in Rus...
Observations/Thoughts
2021-12-08
~10 min read
blog.yoshuawuyts.com
Async Cancellation I— 2021-11-10 tasks and futures cancelling futures cancelling tasks propagating cancellation for futures propagating cancellation for tasks patching cancellation propagation structured concurrency cancelling a group of ta...
Observations/Thoughts
2021-11-17
~24 min read
blog.yoshuawuyts.com
Async overloading— 2021-08-24 choose your calling convention the standard library async overloading in swift bringing async overloading to rust potential caveats backwards incompatibility overloading existing stdlib functions feasibility of...
Observations/Thoughts
2021-08-25
~15 min read
blog.yoshuawuyts.com
hashmaps and hashing algorithms enums as keys static strings as keys hybrid static + dynamic keys looking ahead conclusion In our last post we took a look at possible ways we could improve the ergonomics of Rust's refcounting APIs. In this...
Rust Walkthroughs
2021-05-19
~11 min read
blog.yoshuawuyts.com
what does joining futures do? what does join! return? consistent return types maybe const can help? what does that mean for adding futures concurrency to the stdlib? other considerations conclusion Happy new year everyone! Today we're tryin...
Observations/Thoughts
2021-01-20
~10 min read