typestar

Lenguajes

Rust

Seguridad de memoria sin recolector de basura, pagada en tiempo de compilación.

Primera versión
2015 (1.0)
Creado por
Graydon Hoare, later sponsored by Mozilla
Tipado
Estático, fuerte, con inferencia y propiedad afín (ownership)
Extensiones de archivo
.rs

Para qué sirve

Rust se hizo cargo del trabajo que antes no tenía opción segura. Sistemas operativos, navegadores, motores de juegos, firmware embebido, bases de datos: cualquier lugar donde las pausas o el costo de un recolector de basura son inaceptables. La promesa es que puedes tener el control que C te da sobre la memoria y su disposición sin el talento de C para los use-after-free, las liberaciones dobles y las carreras de datos.

La propiedad es el mecanismo. Cada valor tiene exactamente un dueño, los préstamos se verifican de forma estática, y el compilador rechaza todo lo que no pueda probar correcto. Una categoría entera de bugs se muda de las tres de la mañana al paso de compilación. Por eso Rust sigue apareciendo en lugares sensibles a la seguridad, y por eso partes de Windows, Android y el kernel de Linux ya lo aceptan. Las mismas reglas hacen del borrow checker un muro para quien recién llega. La curva de aprendizaje es real, y está toda al principio.

Fuera del trabajo de sistemas se ha vuelto, sin hacer ruido, una gran opción para herramientas de línea de comandos y para el núcleo rápido de bibliotecas de otros lenguajes. Buena parte del tooling moderno de Python es Rust por debajo. Cargo, la herramienta de compilación y gestor de paquetes, es una razón subestimada de por qué la gente se queda.

De dónde viene

Graydon Hoare empezó Rust como proyecto personal alrededor de 2006. Mozilla comenzó a patrocinarlo en 2009, con la mira en un motor de navegador que pudiera ser paralelo sin ser un desastre de seguridad. Ese trabajo se convirtió en Servo, y partes de él llegaron a Firefox como Quantum.

Los años previos al 1.0 cambiaron el lenguaje sin parar. Un recolector de basura y los green threads se agregaron y luego se quitaron, y la sintaxis temprana, cargada de símbolos, se recortó con fuerza. Rust 1.0 llegó en mayo de 2015 con la garantía de estabilidad que se ha mantenido desde entonces. Las ediciones (2015, 2018, 2021 y 2024) permiten que el lenguaje haga cambios incompatibles un crate a la vez sin partir el ecosistema.

Mozilla despidió a buena parte del equipo de Rust en 2020. La Rust Foundation se formó en 2021, respaldada por AWS, Google, Huawei, Microsoft y Mozilla, para sostener el proyecto de forma independiente. La adopción ha seguido subiendo, empujada por gobiernos y grandes proveedores que por fin se toman en serio la seguridad de memoria.

Cómo se siente teclearlo

Rust tiene la puntuación más densa de aquí. Los lifetimes meten apóstrofos en posiciones de tipo, los genéricos apilan corchetes angulares, y las rutas usan :: en vez de un punto, un doble toque que tus dedos tienen que aprender en frío. Suma &, ?, ! y el turbofish, y es de lejos la mejor práctica para la fila de símbolos.

Practica Rust

181 pasos en 12 tours, desde lo básico hasta programas completos.

Los tours

Documentación oficial

Otros lenguajes