Noticias Programación

Óxido rápido y seguro

Rust es uno de los pocos lenguajes innovadores que amenazan con sacudir el viejo orden, pero ¿realmente es tan bueno? Una nueva encuesta de investigación sugiere que en realidad parece ser más seguro y más rápido, lo cual es notable.


El problema con la evaluación de cualquier idioma nuevo es que hay un efecto de halo. Los primeros usuarios principalmente quieren alentar a otros programadores a subirse al carro para seguir haciendo esto. Esto significa que es probable que encuentre fuertes argumentos a favor del uso del nuevo lenguaje, y solo unos pocos programadores hablarán en contra de la idea. Lo que empeora esto es que los detractores generalmente tienen menos conocimientos sobre el idioma que sus seguidores y son fáciles de borrar como ignorantes de las grandes ideas del idioma. Así es con Rust. Sus partidarios tienen la voz más fuerte y persuasiva, lo que dificulta llegar a una conclusión.

Esto hace que una evaluación informada y más neutral sea aún más valiosa. Un nuevo estudio intenta contextualizar lo que sabemos sobre Rust presentando una investigación sobre lo que sabemos:

¿Merece Rust tanta atención? ¿Qué hay en Rust que atrae a los programadores a este nuevo lenguaje? La seguridad y el rendimiento fueron algunas de las primeras promesas de Rust, como lo afirmaron sus primeros desarrolladores. ¿Es Rust un lenguaje seguro y de alto rendimiento? ¿Se han logrado estas afirmaciones?

En primer lugar, intente averiguar si Rust es realmente tan rápido como los idiomas que probablemente reemplazará. ¡La noticia sorprendente es que Rust parece ser más rápido que C! Ciertamente es comparable a otros idiomas que se consideran «rápidos».

Así que no hay duda de que Rust es el más rápido en las tres tareas, aunque C / C ++ se reduce unos pocos milisegundos en la última.

El otro lado de la pregunta es si esta velocidad se produce a expensas del uso excesivo de memoria:

óxido espacial

Puedes ver que Rust es un poco peor que C y mucho mejor que los demás.

Entonces, ¿es más seguro?

El documento proporciona una lista de problemas contra los que se protege Rust: uso después de liberar, desreferencia de puntero nulo, doble libre, desbordamiento de búfer, sobrelectura de búfer y ejecución de datos. La conclusión es que protege contra todos estos, siempre que no recurra al uso del bloqueo inseguro.

El problema aquí es que muchos han argumentado que Rust es tan difícil de usar que se debe recurrir al bloqueo inseguro la mayoría de las veces. Es difícil saber si este es un hecho significativo en la evaluación de Rust y esta encuesta no aborda este tema. No tiene mucho sentido tener un lenguaje seguro si no se descarta su protección, pero esa protección lo hace inadecuado para la mayoría de las empresas. Esta es un área donde necesitamos más investigación.

Con Rust permitido en el kernel de Linux, es claramente un lenguaje en ascenso. Es popular y prometedor, pero ¿es lo suficientemente maduro como para usarlo realmente? Claramente, algunos programadores bien informados piensan que sí, pero ¿con qué frecuencia usan inseguro?

También puede gustarte...