TypeScript with a Borrow Checker
github.com
github.com
In Rust, unique ownership and borrowing eliminate defensive coding: you never need to copy "just in case", because the type system makes it clear who can modify what and when.
Elimination of unintentional shared mutable state is generally helpful. It's not just about bare-metal no-GC performance, but helps document and enforce data sharing contract between libraries and their users.
Js is mainly single threaded.
> Note that this does not aim to be compatible with TypeScript and JavaScript libraries instead