Rust language evolutions for better kernel developer experience
summary
Short update on arbitrary_self_types and its projected arrival on stable Rust, showing how receivers can now be expressed for smart-pointer-like types (Pin, refcounted wrappers) and where the current deref/receiver coupling still blocks ergonomic kernels code. A panel covers three concrete in-place initialization proposals — init expression, out-pointer and guaranteed emplacement — with worked examples from in-tree Rust code to collect ergonomics and safety feedback, and time-permitting a demo of trait evolution for refactoring the kernel crate.
AI-written summary · about
chapters (7)
- 0:00Introduction
- 1:11C-style methods in Rust
- 3:17Receiver and self type
- 8:22Deref and smart pointers
- 13:02Receiver target restrictions
- 17:34Arbitrary self types update
- 18:38In-place initialization proposals
related talks
47mRust project goals 2024: Stabilizing Rust in the Linux Kernel
40mKeynote: Kernel Developer Roundtable
32mBeyond the &: A Future for Native Smart Pointers in Rust
15mNon-binary Rust: Between Safe and Unsafe
31mGetting Something for Nothing
40mRust’s approach of getting things right
47mOpening Keynote
33mRust and Haskell, sitting in a tree
