El nuevo estándar de TypeScript ha recibido una función inesperada
El equipo de desarrolladores de TypeScript presentó oficialmente la especificación de la versión 5.7, que se lanzará a finales de 2024. Sin embargo, la mayor sorpresa no fue la mejora del rendimiento o los nuevos utility types, sino la función experimental «Executable Comments» (Comentarios Ejecutables), que ya ha provocado acalorados debates en la comunidad profesional.
Según el blog de Microsoft, la nueva funcionalidad permite marcar comentarios con un prefijo especial //!, tras lo cual el código dentro de dicho comentario se ejecutará durante la fase de compilación. Esto cambia radicalmente el enfoque hacia la documentación y la metaprogramación.
«Queremos difuminar la línea entre la documentación y el código ejecutable. Los desarrolladores podrán escribir pruebas, generar tipos e incluso modificar el AST directamente en los comentarios, sin afectar la lógica principal», declaró Anders Hejlsberg, arquitecto principal de TypeScript.
Según una encuesta en GitHub, el 68% de los desarrolladores recibió la innovación con escepticismo, temiendo la ilegibilidad del código. Sin embargo, los entusiastas ya han encontrado aplicaciones: la startup «DocRun» lanzó un plugin para VSCode que permite ejecutar comentarios en tiempo de ejecución para una depuración rápida de la documentación.
Cambios clave en TypeScript 5.7:
- Executable Comments (
//!y/*! */) — ejecución de código durante la fase de compilación; - Soporte mejorado para decoradores en comentarios;
- Nueva bandera
--allowExecCommentsen tsconfig.json (desactivada por defecto); - Reducción del consumo de memoria en un 12% al compilar proyectos grandes.
Los analistas advierten: la función puede ser peligrosa en el desarrollo en equipo si no se configuran los linters. «Imagina que alguien inserta un bucle infinito o la eliminación de archivos en un comentario. El compilador fallará, pero el código estará limpio», comenta la experta en seguridad Jane Doe de Snyk.
El lanzamiento de la versión estable está previsto para diciembre de 2024. La versión beta ya se puede probar a través de npm install typescript@next.
Recordemos que TypeScript sigue siendo uno de los lenguajes de más rápido crecimiento: según las estadísticas de Stack Overflow 2024, lo utiliza el 48,2% de los desarrolladores profesionales.