Whilst Rust does not have higher kinded types, it does have higher rank trait bounds: https://stackoverflow.com/questions/35592750/how-does-for-syntax-differ-from-a-regular-lifetime-bound/35595491#35595491 (lifetimes for closures)
miniblog.
Related Posts
My Rust rule of thumb: if there are no lifetimes in your return type, you probably don't need to specify the lifetimes in your arguments.
(I know clippy will point out simple cases of unnecessary lifetimes, but plenty other cases occur IME.)
NLL (non-lexical lifetimes) now landing in Rust!
Really interesting post on optimising the Rust compiler: https://blog.mozilla.org/nnethercote/2018/06/05/how-to-speed-up-the-rust-compiler-some-more-in-2018/
I love that the author comments that he still finds lifetimes somewhat scary. You can even work on the compiler without needing to master advanced Rust techniques!