Un desarrollador de C++ lanza una provocación en forma de fuga de memoria para recordar que no todo el mundo necesita un «borrow checker»
Por Redacción DevCulture – 4 de junio de 2025
El eterno debate entre desarrolladores de C++ y Rust ha subido un nivel más. En un artículo mitad tutorial, mitad sátira, Mamadou Babaei desafía los postulados de la comunidad Rust con una provocación tan explícita como ilustrativa: una demo en C++ con fugas de memoria voluntarias.
Con el título provocador “Rust Devs Think We’re Hopeless; Let’s Prove Them Wrong (with C++ Memory Leaks)”, el ingeniero no solo ironiza sobre la visión que algunos programadores de Rust tienen sobre C++, sino que convierte los errores clásicos de gestión de memoria en un manifiesto de resiliencia: “no necesitamos un borrow checker, ni modelos de propiedad, ni magia negra… solo punteros crudos, determinación y un poco de locura”.
¿Broma o realidad?
La publicación no se limita a la crítica sarcástica. Incluye dos ejemplos funcionales: el primero, una fuga de memoria intencionada que genera contraseñas en bucle sin liberar memoria; el segundo, una versión instrumentada con _CrtDumpMemoryLeaks()
para detectar esas fugas desde Visual Studio.
El código está cuidadosamente comentado y acompañado de una explicación “para niños de cinco años” sobre cómo funciona el rastreo de memoria en entornos Windows con MSVC, además de análisis técnicos para desarrolladores más avanzados.
Reacciones divididas
La comunidad no ha tardado en reaccionar. Para algunos, el artículo es una divertida y necesaria defensa de un lenguaje con décadas de recorrido y miles de sistemas críticos a sus espaldas. Para otros, es un ejemplo de por qué Rust representa el futuro de la seguridad y la fiabilidad en el desarrollo.
Mientras tanto, la publicación ha generado cientos de debates en Hacker News, Reddit y Mastodon, con comentarios que van desde la nostalgia por los tiempos en los que “valía todo” en C++, hasta quienes defienden que “el verdadero programador sabe liberar memoria a mano”.
Más allá de la anécdota
Este tipo de publicaciones evidencian una tensión generacional y cultural entre paradigmas de programación. Rust, con su enfoque en la seguridad en tiempo de compilación y su borrow checker, se presenta como la evolución natural del C++, un lenguaje que, pese a sus peligros inherentes, sigue siendo dominante en sistemas de alto rendimiento, motores de juego, sistemas embebidos y más.
La cuestión, sin embargo, no es solo técnica. Es también filosófica: ¿deben los lenguajes protegernos de nuestros propios errores, o permitirnos correr riesgos calculados?
En resumen: el artículo de Babaei es tanto una crítica como una reivindicación. Una invitación a no enterrar el C++ tan rápido, y una llamada a que el humor, la nostalgia y la técnica convivan en el ecosistema dev actual.