Vercel reescribe el compilador de TypeScript en TypeScript y pasa toda la suite de pruebas

tsc-ts: TypeScript written in TypeScript

Vercel Labs publica tsc-ts, un port experimental del compilador TypeScript 7.0.2 (tsgo) escrito en TypeScript idiomático y compilado a código nativo con scriptc. El proyecto compara cada componente —scanner, parser, binder, resolución de módulos, emisión de JavaScript y declaraciones, type checker— contra tsgo sobre el corpus de pruebas de TypeScript, unas 12.500 archivos, y todos coinciden. También expone un servidor --api compatible con tsc --api.

El corpus de pruebas de TypeScript (unos 12.500 archivos, 17.000 unidades tras dividir los casos con varios archivos) se usa para comparar cada parte con tsgo.
  1. pizlonator

    Confirmado, es más rápido que la versión en Go, lo cual es muy sorprendente, ¡y súper impresionante!

    Advertencias:

    - No creo que sea correcto decir que está "escrito en TypeScript". De hecho, está escrito en el subconjunto de TypeScript que scriptc soporta. scriptc no es solo un subconjunto de ts; incluso se desvía de la semántica de ts de formas sutiles para facilitar sus optimizaciones. Así que esta gente realmente ha creado un lenguaje nativo similar a TypeScript con una especie de híbrido RC-GC y un montón de advertencias. No está claro si esto es mejor que simplemente crear un lenguaje nuevo.

    - Muy probablemente se desarrolló en conjunto con scriptc, así que obtiene el máximo beneficio de exactamente el tipo de modismos que scriptc soporta bien. Y apostaría a que incorporaron optimizaciones a scriptc específicamente para lograr este resultado.

    Esto podría ser útil, suponiendo que inviertan en darle soporte, y que tú seas el tipo de persona que necesita compilaciones de ts 2x más rápidas.

  2. nektro

    > Un port experimental de TypeScript del compilador TypeScript 7.0.2 (TypeScript-Go, o tsgo), compilado a código nativo con scriptc.

    ¿no habría sido más fácil empezar desde v6, el que ya está en typescript?

  3. _1tan

    ¿Alguien ha hecho un benchmark contra el nuevo time typecheck de Bun que llegó en la v 1.4.3? Yo lo haría pero estoy demasiado lejos de mi máquina ahora mismo.

  4. tallowen

    El ida y vuelta entre escribir herramientas en javascript y en go o rust parece estar en un equilibrio inestable ahora mismo:

    - Go / Rust: Es más fácil que nunca reescribir herramientas existentes en lenguajes más eficientes

    - Javascript: El runtime de v8 para vercel o cloudflare workers es una forma mucho más barata de ejecutar ciertas cargas de trabajo (p. ej. agentes conversacionales) que ejecutar una vm pesada. Véase just bash como otro proyecto de ejemplo que aprovecha esto (https://github.com/vercel-labs/just-bash)

    ¡Tengo curiosidad por ver qué pasa!

  5. drewbitt

    Ya no sé qué es un meme y qué no...

Más de este día

2026-10-17