A new beginning for Rust

I have an idea - since making a full stable abi for rust obviously isn't easy, until then, we can make a abi containing a subset of rust's features, which is stable. The problem with the C ABI is that using the C ABI (Application Binary Interface) in Rust generally requires the unsafe keyword. This would mark a new beginning for rust, along with much, much faster compile times. This can be broken into 3 phases: first, define a minimal, carefully chosen subset of Rust’s type system and calling conventions that can be guaranteed to remain stable across compiler versions; second, implement a formal specification and reference implementation of this stable subset, along with tooling that enforces safety without requiring ubiquitous unsafe blocks; third, gradually expand the stable ABI to cover more Rust features, all while benchmarking performance improvements, ensuring backward compatibility, and fostering community adoption. This phased approach would provide a “safe island” for interop and faster compilation, paving the way for a true stable Rust ABI in the long term.

1 Like