Bun abandonó Zig por Rust — y un ingeniero con IA lo hizo en 11 días

Bun dejó Zig por Rust, y la IA lo hizo posible en 11 días

Si llevas un tiempo en el mundo del desarrollo web, seguro conoces Bun. Es ese runtime de JavaScript que promete ser más rápido que Node.js, con bundler, test runner y package manager todo en uno. Se hizo famoso por estar escrito en Zig, un lenguaje de bajo nivel que pocos conocían fuera de los círculos de sistemas. Bueno, esa era ya terminó: Bun ahora se está reescribiendo en Rust.

Y aquí viene la parte que me voló la cabeza: un solo ingeniero, con ayuda de IA, hizo en 11 días lo que habría tomado a un equipo un año completo.

¿Por qué dejar Zig?

No es que Zig sea malo. De hecho, Jarred Sumner —el creador de Bun— es claro en que sin Zig, Bun nunca habría existido. El problema es que JavaScript es un lenguaje con garbage collector, y mezclar memoria gestionada por GC con memoria manual (como en Zig o C) es un dolor de cabeza constante. La lista de bugs que tuvieron que arreglar es larga: use-after-free, double-free, memory leaks en paths de error, race conditions en el recolector de basura… todos errores clásicos de manejo manual de memoria.

En Rust, esos bugs son simplemente errores de compilación. El borrow checker no te deja compilar código que tenga esos problemas. Es una diferencia fundamental: prefiero mil veces que el compilador me grite antes de mandar el código a producción, antes de que un usuario me escriba a las 3 AM porque todo se cayó.

La parte de la IA que me hace pensar

Lo que más me llamó la atención no es solo que usaron IA para portar 535.000 líneas de código de Zig a Rust. Es cómo lo hicieron. No fue un «Claude, reescribe esto» y a rezar. Fue un proceso metódico:

Primero, portaron todo de una sola vez (no incremental). Segundo, usaron el mismo test suite de TypeScript que ya existía para validar. Tercero, usaron agentes de code review adversariales que comparaban el código Zig original con el Rust generado, línea por línea, asegurando que la traducción fuera fiel.

Como ingeniero de sistemas, esto me hace reflexionar. Cuando yo empecé, un rewrite de esta magnitud era un proyecto de meses con varios desarrolladores senior. Hoy, con las herramientas correctas y disciplina en el proceso, un ingeniero con contexto profundo del código puede hacer cosas que antes requerían todo un equipo.

Y eso me emociona y me da vértigo en partes iguales.

El contexto que importa

Bun fue adquirido por Anthropic en diciembre de 2025, y Jarred usó una versión pre-release de Claude Fable 5 para buena parte del rewrite. Hay que ser honesto con esto: no fue un caso de «cualquiera con ChatGPT puede reescribir su proyecto en un fin de semana». Jarred conoce Bun mejor que nadie, escribió la primera versión a mano en un departamento en Oakland antes de que existieran los LLMs. La IA fue una herramienta que amplificó su capacidad, no que la reemplazó.

Mi opinión

Como alguien que trabaja con sistemas todos los días, veo esto como un punto de inflexión. Rust ya era el lenguaje al que muchos queríamos migrar por su seguridad de memoria, pero el costo de migración siempre era prohibitivo. Si la IA puede reducir ese costo de «un año de un equipo» a «11 días de un ingeniero», las dinámicas cambian.

Claro, no todos los proyectos son Bun. No todos tienen 535.000 líneas con un test suite sólido y un creador que conoce cada línea. Pero la demostración de que es posible, de que el costo del rewrite ya no es una barrera insuperable… eso cambia la conversación.

Si trabajas con código legacy que te da dolores de cabeza por bugs de memoria, quizás es hora de pensar si esa migración a Rust que siempre postergaste es más factible de lo que creías. Yo al menos voy a empezar a mirar mis proyectos con otros ojos.

Fuente de inspiración: Rewriting Bun in Rust

Comentarios

Aún no hay comentarios. ¿Por qué no comienzas el debate?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *