Serpiente_Plyskeen
Madmaxista
- Desde
- 14 Dic 2007
- Mensajes
- 17.953
- Reputación
- 28.827
Como programador de C++, tengo que decir que en los sectores en los que trabajo (supercomputación, gpgpu, visualización científica), el Rust no lo toca nadie pero que ni con un palo.Mal ejemplo has elegido.
Rust es un lenguaje muy interesante porque es de los pocos que intentan conjugar velocidad con seguridad evitando fallos de segmentación o problemas en programas multihilos que son una pesadilla en lenguajes como C++.
Aunque no es un lenguaje muy usado (sigue siendo extremadamente joven) ya son unos cuantos los programas críticos que están siendo portados a Rust y mucho más los que se están planteando hacerlo. Cuenta, además, con el apoyo de Mozilla lo que implica una base bastante importante de desarrolladores.
De hecho las mejoras de las últimas versiones de Firefox, evidentes para cualquiera que use este navegador, se debe a la integración de partes del nuevo motor Servo escrito en Rust que permite aumentar tanto la velocidad, por la optimización del código y el aumento del paralelismo, como su seguridad.
En parte, supongo que es por la falta de librerías (BLAS, LAPACK, CUDA, Thurst, OpenCL, OpenGL, Vulkan, Boost, etc - y que conste que estoy casi seguro de que muchas de las que nombro deberían de estar implementadas también en Rust, pero parte del problema podría ser que las librerías crecen más rápido de lo que los programadores de Rust pueden llegar a implementar - sencillamente, porque no hay suficientes). ¿Acaso no es posible hacer compilación entre Rust y librerías de C++, como es el caso entre C y Fortran, por ejemplo?
En parte, supongo que también influye que realmente no hace nada que un buen programador de C++ no pueda hacer tan bien o incluso mejor -y como todos los programadores de C++ (así como los de C) se consideran la Master Race de la programación, pues más de lo mismo (un problema cultural, vamos). Además, muchos de los defectos de C++ han sido tratados (que no necesariamente resueltos, ojo!) de C++11 en adelante, así que menos razón aún para cambiarse (por ejemplo, la gente que conozco que trabajan en switching de baja latencia para empresas financieras están igual).
Los únicos que he conocido que utilicen y promueven Rust es gente que trabaja en el sector de JAFBWJADFE (Just Another Fucking Database with Just Another Fucking Front End, es decir, páginas web y tal). Por cierto, que los fans de Rust tienen fama de ser unos fanbois y tocapelotas de cuidado, lo que tiende a repeler a los programadores de C++. Curiosamente, parece que lo de Firefox es el único caso de éxito de Rust, a pesar de que estoy seguro de que debería de haber otros ya. En el artículo de wikipedia vienen más, pero la verdad es que me resultan todos desconocidos.
Así que ahí estamos, al menos por ahora. Hace unos meses publicaro un artículo al respecto de Rust, y entre los comentarios había alguno bastante bueno explicando por qué la migración de C++ a Rust ni está, ni se la espera. Supongo que es un poco como Fortran, que pasan años y años, todo el mundo lo putea... pero ahí sigue.