En marzo de 2025, el equipo de TypeScript en Microsoft anuncio lo que podria ser el cambio mas significativo en los doce anos de historia del lenguaje: una reescritura completa del compilador de TypeScript en Go. El proyecto, que ha estado en desarrollo interno durante mas de un ano, busca entregar una mejora de diez veces en el rendimiento de compilacion manteniendo compatibilidad total con las bases de codigo TypeScript existentes.
Por Que Go, y Por Que Ahora
El compilador actual de TypeScript, conocido como tsc, esta escrito en TypeScript y se ejecuta sobre Node.js. Esta fue una eleccion pragmatica cuando el lenguaje era joven, ya que el equipo podia usar su propio producto. Pero a medida que la adopcion de TypeScript ha explotado, el techo de rendimiento de un compilador basado en JavaScript se ha convertido en un cuello de botella real. Los monorepos empresariales grandes con millones de lineas de codigo TypeScript enfrentan rutinariamente tiempos de compilacion medidos en minutos, y la capacidad de respuesta del editor se degrada a medida que crece el tamano del proyecto.
El equipo considero varios lenguajes para la reescritura, incluyendo Rust y C++. Finalmente eligieron Go por su combinacion de primitivas de concurrencia solidas, compilacion rapida, recoleccion de basura y una sintaxis familiar que lo hace accesible a un amplio grupo de contribuidores. Segun el lider del equipo de TypeScript, Anders Hejlsberg, quien anuncio el proyecto, la implementacion en Go aprovecha las goroutines para la verificacion de tipos en paralelo entre archivos, que es donde proviene la mayor parte de la ganancia de rendimiento.
Benchmarks de Rendimiento
Los benchmarks tempranos son impactantes. El equipo de TypeScript probo el compilador en Go contra varios proyectos de codigo abierto conocidos y reporto mejoras de velocidad consistentes. La base de codigo de Visual Studio Code, uno de los proyectos TypeScript publicos mas grandes, vio su tiempo de verificacion de tipos caer de aproximadamente sesenta y cinco segundos a menos de ocho segundos. La base de codigo de Playwright paso de aproximadamente ocho segundos a menos de un segundo. Para desarrolladores que trabajan en bases de codigo grandes, estos numeros se traducen en una experiencia de edicion fundamentalmente diferente: el autocompletado se vuelve instantaneo, ir a la definicion deja de colgarse y los subrayados rojos aparecen tan rapido como puedes escribir.
Compatibilidad y la Ruta de Transicion
El compilador basado en Go esta diseado para ser un reemplazo directo. Lee los mismos archivos tsconfig.json, soporta las mismas opciones de compilador y produce salida JavaScript identica. El equipo ha estado ejecutando el nuevo compilador contra la suite de pruebas de TypeScript, que incluye mas de setenta y cinco mil casos de prueba, y reporta que la compatibilidad ya supera el noventa y nueve por ciento. Las brechas restantes son principalmente casos extremos en escenarios de emision de declaraciones raramente utilizados.
La transicion sera gradual. El compilador existente basado en Node.js continuara recibiendo actualizaciones de mantenimiento, y el compilador en Go se distribuira como una vista previa opcional antes de convertirse en el predeterminado. El equipo espera que la vista previa este disponible en una futura version de TypeScript, con la transicion completa finalizando durante el ano siguiente.
Lo Que Significa para el Ecosistema
Los efectos en cadena se extienden mucho mas alla de la velocidad de compilacion pura. Una verificacion de tipos mas rapida significa que los pipelines de CI se ejecutan en menos tiempo, las maquinas de los desarrolladores se mantienen mas frias y la barrera para habilitar la verificacion de tipos estricta en toda una base de codigo se reduce significativamente. Los plugins de editor y los clientes del protocolo de servidor de lenguaje se beneficiaran inmediatamente, ya que la implementacion del protocolo del servidor de lenguaje usara el mismo motor impulsado por Go. Para el ecosistema JavaScript mas amplio, este movimiento senala que TypeScript esta invirtiendo en infraestructura a largo plazo para seguir siendo la solucion dominante de JavaScript tipado durante las proximas decadas.



