Brian Kernighan, cocreador de Unix y gran gurú de C: “Para mí usar este lenguaje era una tortura”

Generado con IA

Uno de los lenguajes de programación más utilizados de la historia está siendo superado por Rust, pero el experto Kernighan no está de acuerdo con varias de sus funciones.

No es una sorpresa para los programadores que Python ha liderado la industria de la informática durante años por su alta versatilidad, pero uno de los eventos más impresionantes de los últimos meses es que Rust se ha posicionado por arriba que C como motor de rendimiento en el mencionado lenguaje de programación de Guido van Rossum.

¿Qué quiere decir esto? Pues que este entorno de extensiones .rs y .rlib se está volviendo uno de los preferidos de los desarrolladores, lo cual ha generado un gran debate. Ahora, han surgido las opiniones de una de las figuras más importantes de esta área, Brian Kernighan, cocreador de Unix y C.

Al parecer, no está de acuerdo sobre que Rust sea tan genial como todo el mundo dice. Existen varios peros a la hora de implementar sus características en los proyectos y por esa misma razón es que no va a ser suficiente como para reemplazar el sistema que ha creado junto a Dennis Ritchie.

Rust no es tan bueno como parece: problemas de compilación, rendimiento y seguridad

No es algo sacado de cualquier lugar, pues la información proviene de una entrevista que ha tenido Kernighan con Vintage Computer Federation, donde el experto de 83 años explica que Rust en realidad no es la gran cosa porque causa varios problemas o cambios innecesarios en los resultados.

Una de las preguntas que se le hicieron fue referente a la posible sustitución sobre C, ya que las últimas estadísticas de popularidad reveladas apuntan a que podría quedarse atrás del lenguaje competidor y la respuesta ha sido un “no” rotundo

Al menos, por el momento, no va a darse ningún reemplazo porque existen diversas características que van a hacer que se mantengan casi que en iguales posiciones. Primero porque C lleva mucho tiempo en evolución y todavía le queda mucho para dar y, segundo, porque Rust también debe mejorar en algunos aspectos para consolidarse como el “mejor”.

“Para mí, usar este lenguaje en sí era una tortura… No podía comprender los mecanismos de seguridad de la memoria en un programa donde, de todos modos, la memoria no era un problema. Los mecanismos de apoyo que lo acompañaban eran increíblemente grandes y lentos”.

Entre palabras, menciona que solo ha “escrito un programa en Rust hasta ahora”, pero que eso ha sido suficiente como para determinar qué tan buena o mala ha sido su experiencia a la hora de implementarlo de manera real en proyectos. 

Los principales inconvenientes con los que se ha encontrado son los sistemas de apoyo o nuevas cosas como Ownership (propiedad), Borrowing (préstamo) y Lifetimes (tiempos de vida). Al mismo tiempo, aclara que le ha parecido demasiado lento en comparación con otras opciones de la industria.

Por lo visto, algo que podía haber hecho en tan solo minutos, le ha tardado más tiempo de lo esperado, haciendo que su trabajo se retrasara cuando estaba realizando las pruebas sobre este lenguaje de programación. 

“El compilador era lento, y el código que producía era lento... Y cuando intenté averiguar qué pasaba, ¡resultó que el lenguaje había cambiado desde la última vez que alguien publicó una descripción! Así que tardé días en escribir un programa que en otros lenguajes tomaría quizás cinco minutos…”.

El especialista agregó que tal vez es algo “cínico”, pero que no cree que Rust “vaya a reemplazar a C de inmediato”. Muchos de los programadores actuales siguen usando este entorno antes que el más moderno, por comodidad, rapidez y el hecho de evitar la curva de aprendizaje de algo completamente nuevo. 

La entrevista es sumamente importante para causar un cambio en el debate actual que hay entre los desarrolladores. Al final, lo que de verdad importa en todo esto es que se entienda que poco a poco van a llegar nuevos avances, pero las herramientas vas a poder utilizarlas de acuerdo a tu experiencia y gustos.

Ahora mismo, la inteligencia artificial está jugando un papel importante en el desarrollo de muchos trabajos de programación a nivel mundial y es un claro ejemplo de que los métodos de creación de código pueden realizarse de diversas maneras.

Otros artículos interesantes: