LobstersEvan Ovadia24 min readadvanced
The Golden Spike, and Resurrecting the Vale(n) Programming Language
Summary
Evan Ovadia announces Valen, a fork of his Vale language aimed at seamless Rust interop with features like linear types, group borrowing, and cross‑language generics. He outlines current capabilities, open challenges, and a lazy AST‑signature approach to bridge the Rust ABI gap.
- Valen can already express linear types and group borrowing across the Rust boundary, but cannot yet declare Rust types as linear.
- Structs and zero‑sized types can cross the boundary, and Valen structs can implement Rust traits, though full sized structs are still prototype‑only.
- The compiler lazily generates Valen AST signatures for Rust functions instead of parsing Rust signatures directly, avoiding a full reimplementation of Rust's generics system.
- Open interface constructors let Valen create inline implementations of Rust traits, a complex feature combining interfaces, generics, and closures.
Language engineers and Rust developers interested in safe, zero‑cost interop will care because Valen proposes a novel way to bypass the C ABI limitation.
6/10
