Linus Torvalds, creador de Linux: "C++ es un lenguaje horrible, muchos programadores mediocres lo usan y es mucho más fácil escribir basura absoluta y total con él"

Linus Torvalds sobre líneas de código y un gran logotipo de C++
Linus Torvalds sobre líneas de código y un gran logotipo de C++Magnific / Montaje

El creador de Linux ve en C++ un lenguaje potente, pero también capaz de complicar el código si se usa mal, con estructuras difíciles de revisar, entender y mantener a largo plazo.

En programación, tener más opciones no siempre ayuda, ya que un lenguaje puede ofrecer muchas herramientas y permitir diseños muy avanzados, pero también puede acabar complicando el trabajo si el código se vuelve difícil de leer, revisar y mantener.

Esta es una de las críticas que Linus Torvalds ha hecho a C++. Para el creador del kernel de Linux, su potencia también puede ser un problema cuando se usa para construir estructuras demasiado complejas o soluciones difíciles de controlar.

Además de crear Linux, base de servidores, superordenadores, móviles Android y muchos sistemas integrados, también creó Git, la herramienta que usan millones de desarrolladores para trabajar en proyectos de software.

C++ es potente, pero también permite complicarlo todo

Linus Torvalds, creador de Linux, sonríe sentado en un escritorio con un peluche de Tux y un portátil
Linus Torvalds, creador de Linux, sonríe sentado en un escritorio con un peluche de Tux y un portátilGenerado con IA

C++ nació como una evolución de C y añadió muchas funciones para crear programas más complejos. Permite usar clases, objetos, plantillas, herencia y bibliotecas, por eso sigue presente en videojuegos, motores gráficos, navegadores, software financiero, apps científicas y sistemas donde el rendimiento es clave.

La crítica de Torvalds no va contra esa potencia, sino contra lo que puede provocar cuando se usa mal. Y es que este lenguaje permite escribir código muy rápido y eficiente, pero también puede dar lugar a estructuras difíciles de entender.

En un proyecto pequeño quizá no sea un gran problema, pero en sistemas como Linux o Git puede arrastrarse durante años.

“C++ es un lenguaje horrible. Lo es aún más porque muchos programadores mediocres lo usan, hasta el punto de que es muchísimo más fácil generar auténtica basura con él. Francamente, incluso si la única función de usar C fuera mantener alejados a los programadores de C++, eso ya sería una razón de peso para usar C”.

La frase de Torvalds la dijo durante una discusión sobre Git en septiembre de 2007. Un desarrollador preguntó por qué Git estaba escrito en C y no en C++, y Torvalds defendió que C encajaba mejor con lo que necesitaba el proyecto.

Su respuesta fue dura, como ha ocurrido otras veces en sus intervenciones públicas, pero el argumento era correcto. Para él, una herramienta como Git necesita código claro, directo y fácil de revisar, sin capas que compliquen el mantenimiento más de lo necesario.

La crítica va contra el código difícil de mantener

Código de programación
Código de programaciónFreepik

Torvalds prefiere C porque lo considera más explícito, no es un lenguaje perfecto, pero obliga a que muchas decisiones sean visibles. Cuando alguien reserva memoria, manipula datos o define una estructura, el comportamiento queda más cerca del programador y resulta más sencillo revisar qué está pasando.

Con C++, en cambio, muchas operaciones pueden quedar ocultas detrás de abstracciones elegantes, lo que puede hacer que el código parezca limpio, aunque por debajo esté ocurriendo algo más difícil de seguir. Para un proyecto con miles de cambios y revisores, eso puede ser un problema serio.

La preocupación de Torvalds no es que C++ no sirva para nada, sino que su punto es que en proyectos críticos la claridad pesa más que la cantidad de recursos del lenguaje. Si una herramienta permite demasiadas formas de resolver lo mismo, también aumenta el riesgo de que cada programador escriba con su propio estilo y complique el mantenimiento.

Más información sobre: