Extending Rust’s notions of sizedness
summary
Proposal implements RFC 3729 to extend Rust’s sizedness so scalable vectors (SVE) and extern types can behave like registers and FFI forwards. It uses a const traits / constized hierarchy (const-sized, runtime-sized, metaized, pointy-sized), relies on upcoming constraints, and ships non-const parts on nightly. Partial implementation already compiles, but migration edge cases remain (Deref defaults, const evaluation and size_of_val) and work is ongoing to avoid breaking existing crates.
AI-written summary · about
chapters (15)
- 0:00Extending Rust’s sizedness
- 1:07Current Rust sizedness
- 4:17Why extend sizedness
- 6:01Scalable vectors challenges
- 9:52Size hierarchy solution
- 13:46Backwards compatibility
- 16:35Const trait hierarchy
- 19:04Const trait in practice
- 21:11Remaining challenges
- 23:20Status and future work
- 24:02Q&A on matrix extension
- 25:08LLVM and variable length arrays
- 26:12Language complexity
- 27:36Why language issue
- 28:44Closing and Q&A
related talks
19mType Theory for the Working Rustacean
25mType System Tips for the Real World
20mRust language evolutions for better kernel developer experience
03mLightning Talk: Interfaces in C++
31mGetting Something for Nothing
51mAllocating Less: Really Thin Rust Cloud Apps
21mExtending the horizons of R with Rust
42mThe Edge of Safe Rust
