Rust is inspired by PL staples like Haskell and OCaml (borrowing concepts and syntax from them), and was partially designed by PL researchers. The lineage of the borrow-checker in Rust goes back a long way to lots of academic works in region-based memory management and linear logic.