24.047 dólares en dos semanas: Claude reescribió el compilador de TypeScript en Rust y dejó atrás a Microsof

24.047 dólares en dos semanas: Claude reescribió el compilador de TypeScript en Rust y dejó atrás a Microsof

La primera versión funcional estuvo lista en solo 10 horas, mientras los modelos anteriores tardaron meses en resolver la misma tarea.

image

Un experimento concebido como una forma costosa de comprobar los límites de la codificación por IA terminó inesperadamente en un compilador funcional. El desarrollador Theo Brown publicó tsc-rs, un puerto de TypeScript 7 a Rust creado por agentes de IA. La versión en Rust conserva la interfaz del compilador, la comprobación de tipos, el servidor de lenguaje y la API de la implementación de Microsoft en Go, pero funciona notablemente más rápido.

El resultado más llamativo está relacionado con la velocidad. Según el proyecto, en un conjunto de 60 repositorios públicos tsc-rs realiza la comprobación de tipos en aproximadamente la mitad del tiempo que la versión oficial en Go. En una prueba separada de T3 Code, el modo normal fue casi tres veces más rápido, y el modo acelerado superó a TypeScript 7 por más de cuatro veces en una máquina de 16 núcleos.

La historia de los costes es más compleja que la cifra de $24 000. Previamente Brown gastó más de $400 000 en equivalentes de tokens de API intentando realizar el puerto con modelos de OpenAI. Varios meses de trabajo y más de 1,3 millones de líneas de Rust llevaron la compatibilidad solo hasta aproximadamente el 84%. Tras el cambio a Claude Opus 5.5, la primera versión funcional apareció en unas 10 horas.

Los ajustes adicionales con Claude tomaron alrededor de dos semanas y costaron otros $24 047 según la equivalencia de precio de API. La IA inició el proyecto desde cero y eligió un camino más práctico: no portar la vieja implementación de TypeScript en JavaScript, sino el compilador nativo de Microsoft en Go ya existente. Junto con la arquitectura, la nueva versión heredó también parte del comportamiento del código original.

Esa elección dio al proyecto una base sólida de compatibilidad. Ahora tsc-rs está vinculado a la compilación TypeScript 7.1.0-dev del 8 de octubre, pasa las 184 773 pruebas trasladadas de la versión en Go, y el servidor de lenguaje y la API coinciden con ella en conjuntos de control. En 120 proyectos públicos, las diferencias en la salida se limitan a problemas conocidos y a casos donde el resultado del propio compilador Go depende del orden de ejecución.

Microsoft anunció oficialmente TypeScript 7 en julio tras el traslado de TypeScript/JavaScript a Go. La compañía afirmó una aceleración de aproximadamente diez veces respecto a TypeScript 6. El traslado ya ha supuesto una ventaja notable para proyectos grandes: Next.js 16.3 anteriormente pasó a la nueva rama de TypeScript, reduciendo el tiempo de compilación y el consumo de memoria en sus escenarios.

La versión en Rust aún sigue siendo un experimento, no un reemplazo del compilador oficial. En el repositorio se enumeran las discrepancias conocidas para ciertos monorrepos y modos de compilación, y el propio Brown reconoce que no examinó el código generado línea por línea. Al mismo tiempo, el proyecto demuestra que la IA ya es capaz de portar un compilador de gran tamaño por completo, aunque el coste real de tal experimento es mucho más alto que los llamativos $24 000.