Rust Sin Pánico: ¿Puede Rust Reemplazar a C en la Programación de Sistemas de Bajo Nivel?
Este artículo explora la viabilidad de usar Rust para reemplazar a C en la programación de sistemas de bajo nivel, centrándose específicamente en una biblioteca de Protocol Buffers llamada upb. El autor inicialmente dudaba de la capacidad de Rust para igualar a C en rendimiento y tamaño de código, pero descubrió una técnica llamada "Rust Sin Pánico". Esto implica evitar el uso de `panic!()`. El artículo profundiza en los principios, ventajas y desafíos de Rust Sin Pánico, incluyendo el tamaño del código, las salidas irrecuperables y la sobrecarga de tiempo de ejecución. Demuestra cómo escribir código Rust Sin Pánico utilizando técnicas como el uso de la biblioteca libc, opciones de optimización y `std::hint::assert_unchecked`, enfatizando la retención de las comprobaciones de desbordamiento en el modo de depuración para comprobaciones de consistencia adicionales. Si bien esta técnica requiere un trabajo meticuloso y puede necesitar evitar la mayor parte de la biblioteca estándar, promete ofrecer el rendimiento y el tamaño de código de una biblioteca C manteniendo las garantías de seguridad de Rust.