Qué es Rust y cómo usarlo en Linux

diciembre 10, 2022 0 Comments

Script de instalación de Rust
Hace unos días Darkcrizt nos contó qué lenguajes de programación se utilizaron para la escribir el código de Android 13. Y, uno de ellos es el que cada vez más protagonismo está ocupando en la creación del núcleo Linux. Es por eso por lo que en este artículo vamos a explicar qué es Rust y cómo usarlo en Linux.

Lo curioso del caso es que en la lista de lenguajes más populares según el índice TIOBE está último en el lugar 20 mientras que C y C++ a los que está reemplazando ocupan el segundo y tercero. Sin embargo, parece que va a tener un gran futuro.


Uno podría preguntarse cuál es entonces la necesidad de un nuevo lenguaje de programación. La respuesta es que alrededor del 70% de los problemas de seguridad de la última década experimentados por los productos de Microsoft y Google Chrome tienen que ver con falencias de los lenguajes de programación arriba citados.

Qué es Rust

Desarrollado originalmente por Mozilla, ahora está en manos de una fundación independiente. Su objetivo era crear un lenguaje con las características de C y C++ pero solucionando los problemas de seguridad de estos lenguajes. De ahí que haya despertado el interés de los desarrolladores de sistemas operativos.

Además, su compilador es mucho más efectivo y es ideal para el procesamiento de grandes cantidades de datos.

Para dar una definición más formal podemos decir que Rust es un lenguaje de programación de código abierto. Es de tipo estático y está pensado para maximizar el rendimiento y la seguridad con énfasis en la gestión segura de la memoria y la concurrencia. Tiene una sintaxis similar a la de C++.

Los lenguajes de programación manejan diversos tipos de datos que para ser procesados correctamente deben ser primero identificados. Por ejemplo, distinguir si se trata de un carácter o un número.

El proceso de verificar que cada dato haya sido asignado a su tipo correcto se conoce como verificación de tipos y cada lenguaje de programación tiene un sistema para hacerlo ya que ayuda a prevenir errores durante la ejecución de los programas. La verificación se puede hacer al momento de la ejecución o cuando se compila.

En los lenguajes de programación de tipo estático como Rust la verificación se produce al momento de la compilación. La compilación es el proceso de convertir el código del programa a un lenguaje comprensible para la máquina. Esto requiere conocer el tipo asociado a cada una de las variables.

La programación concurrente permite que diferentes partes del código se ejecuten de manera alternada pero tan rápidamente que el usuario crea que se hace en forma paralela.  Esto permite por ejemplo que si una parte del programa requiere de una respuesta externa (Por ejemplo, la conexión con un servidor externo) el resto del programa se siga ejecutando. Podría ser el caso de un cliente de correo electrónico que mientras espera poder descargar el correo de una cuenta envía los nuestros por otra.

Cómo instalar Rust en Linux

Ahora que ya sabemos qué es Rust veamos cómo podemos instalarlo en nuestra distribución Linux. Para hacerlo abrimos la terminal y escribimos el siguiente comando

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Es posible que tengas que instalar primero el comando curl. Está en los repositorios de todas las distribuciones por lo que usa el comando habitual.
Cuando ejecutamos el comando veremos el siguiente mensaje:

¡Bienvenido a Rust!

Esto descargará e instalará el compilador oficial del lenguaje de programación Rust, y su gestor de paquetes, Cargo.

Luego nos informa los directorios que va a utilizar y nos ofrece tres opciones:

  1. Continuar con la instalación (Opción predeterminada)
  2. Personalizar la instalación)
  3. Abandonar la instalación.

Si seleccionamos la primera opción, cuando finalice la instalación nos pedirá que cerremos la terminal para actualizar la configuración. También podemos hacerlo con el comando:

source "$HOME/.cargo/env"
Comprobamos la versión de Rust con:
rustup update
Y desinstalar con:
rustup self uninstall
Cómo entornos integrados de desarrollo se pueden usar Visual Studio Code (Está en las tiendas de Snap y Flatpak) y GNU Emacs (Repositorios oficiales).
No quise entrar demasiado en las diferencias técnicas entre Rust y otros lenguajes de programación. Simplemente señalar qué si quieres aprender a programar e incluso colaborar con el desarrollo de Linux, Rust parece una excelente opción.


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.