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)