Duck-Tape Chronicles: Rust/C++ Interop
summary
Claims that current Rust/C++ interop is “fake it till you make it” and needs deep compiler and toolchain work rather than glue code, arguing for relocatable C++ types, compiler-generated layout metadata, and a stable calling convention that supports slices, enums with payloads, Option/Result layout and allocator-aware types. Proposes dynamic layout queries, metadata-driven indirection to preserve performance, and tooling to detect ABI breaks; notes Microsoft experiments, Rust Foundation involvement with the C++ ISO committee, and ongoing community study groups.
AI-written summary · about
chapters (13)
- 0:00Intro
- 1:50Carcinization
- 3:05Tools
- 4:58Project requirements
- 7:48Challenges
- 9:36Ingredients
- 11:18A cautionary tale
- 14:23Why API stability is important
- 20:26Status quo
- 22:53A scene
- 23:33Object relocation
- 27:26Compiler involvement
- 30:57Rust project goals
related talks
01h 11mDuck-Tape Chronicles - Rust C++ Interop
01h 02mRust/C++ Interop: Carcinization or Intelligent Design?
53mC++/Rust Interop: A Practical Guide to Bridging the Gap Between C++ and Rust
58mRust for The Curious C++ Developers
01h 22mRust for the C++ Programmer
42mPanel: Rust and C++ can work together!
25mRust and C++
52mBuilding Bridges: C++ Interop, Foreign Function Interfaces & ABI
