Empréstimos sem anotações de lifetime
O Rust garante segurança de memória com um verificador de empréstimos (borrow checker) acrescido de parâmetros de lifetime explícitos ('a, 'static) quando referências cruzam fronteiras de funções. O Glide aplica as mesmas regras contra uso após liberação e mutação com aliasing, mas os lifetimes são inferidos apenas pelo escopo — você nunca escreve 'a. O custo mental de "brigar com o borrow checker" é significativamente menor, ao preço de padrões de empréstimo ligeiramente menos expressivos (sem structs autorreferenciadas sem uma arena).
fn first_word(s: &string) -> &string {
return s.split(" ").get(0);
} // sem parâmetros de lifetime
fn first_word<'a>(s: &'a str) -> &'a str {
s.split(' ').next().unwrap()
} // 'a explícito