Val: A Safe Language to Interoperate with C++
summary
Claims a new language that is safe-by-default and enforces mutable value semantics while remaining a zero-cost-abstraction companion for C++. The prototype compiler and formal semantics exist and the research demonstrates concrete features: explicit copies, pass-by conventions, method bundles that let the compiler pick efficient variants, small‑object optimization with unsafe blocks, existential types for type erasure, and spawn/join concurrency. The implementation is an early proof‑of‑concept that handles the examples; design covers ~99% of regular code but full C++ interop remains work in progress.
AI-written summary · about
chapters (12)
- 0:00Val introduction and goals
- 3:28Mutable value semantics
- 7:42Design principles
- 10:57Parameter passing
- 22:29Local bindings
- 28:49Unsafe operations
- 32:04Generic programming
- 41:54Type erasure
- 46:06Concurrency model
- 48:15Carbon and C++ comparison
- 52:05Safety trade-offs
- 55:56Q&A
related talks
01h 36mPlenary: Cooperative C++ Evolution - Toward a Typescript for C++
59mFunctional Programming: data
02h 02mPeering forward: C++'s next decade
01h 29mDelivering Safe C++
15mAeneas: Rust Verification by Functional Translation
01h 02mRust/C++ Interop: Carcinization or Intelligent Design?
54mC++26: an overview
01h 49mKeynote: What C++ is and what it will become
