Microsoft. Es un poco preocupante para la gente de
TC39, básicamente, tener a alguien que quizás simplemente les quite la alfombra de debajo. Para
TypeScript, cuando estaba en el equipo, realmente di una charla sobre las restricciones que
TypeScript se impone a sí mismo para asegurarse de que tiene el menor impacto negativo posible en el
ecosystem de
JavaScript, y cómo funciona eso, y por qué vale la pena leer sobre eso si realmente quieres profundizar en el tema. Pero no voy a entrar en eso, en general, aquí. Es poco probable que
TypeScript haga eso, y esto ayuda a esos conjuntos de restricciones. Así que la forma en que pienso en cómo se usa el código hoy en día, la mayoría de las personas están escribiendo
JavaScript, según sus estadísticas de BigQuery. Pero un porcentaje considerable está utilizando
TypeScript, y hay una o dos personas de JS en medio que lo hacen un poco ambiguo. Pero la forma en que las personas interactúan con este código a través de herramientas y leyendo read-me's y cosas así, es en su mayoría, mucho más basada en
TypeScript, porque tienes cosas como definitely typed, que proporciona comentarios en línea en tus editores, y eso realmente se come el espacio de interacción en el que las personas usan archivos
JavaScript en general. Y aún así, de todo eso, el código real que puede ejecutarse en tu motor
JavaScript es solo
JavaScript. Y entonces te encuentras en esta posición en la que realmente no puedes explorar con este código, porque tiene que pasar por un transpilador para eliminar sus anotaciones de tipo. Pero se siente extraño una vez que empiezas a acostumbrarte a trabajar en un
ecosystem como
Deno o Bund donde
TypeScript puede ser una característica nativa. Realmente empieza a confundirte con la idea de que estás ejecutando un archivo
JavaScript. Empiezas a pensar que estás ejecutando un archivo
TypeScript. Y eso no es generalmente bueno para
TC39 porque, de nuevo, quieren que estés ejecutando un archivo
JavaScript, los motores
JavaScript. Eso es lo que es todo. Y esta propuesta ayuda a intentar traer a la gente de vuelta de
TypeScript a
JavaScript.
TypeScript tiene mucha libertad ahora porque ejecuta su propia implementación del lenguaje. Y entonces, cuando, ya sabes, cuando se añaden características a
TypeScript, pueden ser puestas donde quieran siempre y cuando tenga sentido y pueda ser utilizada en todas partes. Pero en el contexto de un mundo de tipos de comentarios, ya no es tan cierto. En este código, este tipo de característica simplemente no está disponible. No puedes añadir un post fijo, como satisfies. No puedes establecer una palabra clave arbitrariamente. Y satisfies podría ser relevante solo para
TypeScript. Podría no ser relevante para otros sistemas de tipos. Y entonces, ya sabes, el equipo de
TypeScript realmente tiene que ceder algo aquí. Y eso no son todo malas noticias, ¿verdad? Este es un problema que el equipo de
TypeScript ya ha tenido que abordar al menos una vez, porque, ya sabes, el soporte de satisfies ya está en JSDock. Y, ya sabes, eso funciona bastante elegantemente. Y entonces, tienes esta cosa donde, como, ya sabes, hay todo este
TypeScript en el mundo. Ya sabes, cualquiera que esté haciendo
TypeScript hoy básicamente está haciendo un proyecto
TypeScript con archivos .ts, y hay algunas personas de JSDock. Pero en el futuro, creo que va a ser mucho más como que hay una gran mayoría de personas que
Comments