> tying the lifetimes into the type system is the correct way to do memory management.
Type systems used to be THE sexy PL research topic for about twenty years or so, so all the programming languages innovation has been about doing everything with type systems.