2 dépôts
Compiles newer JS features such as optional chaining, nullish coalescing, class fields, and numeric separators to older syntax for broader runtime compatibility.
Distinct from Modern Syntax: Distinct from Modern Syntax: focuses on compiling modern syntax down to older syntax, not just defining modern features.
Explore 2 awesome GitHub repositories matching programming languages & runtimes · Downlevel Compilers. Refine with filters or upvote what's useful.
Sucrase is a high-speed transpilation tool that compiles modern JavaScript, TypeScript, JSX, and Flow to standard JavaScript for modern runtimes. It operates as a fast alternative to Babel, using a single-pass scanner and tokenizer that strips type annotations and applies only requested syntax transforms without building an AST or performing type checking. The tool differentiates itself through a zero-type-checking pipeline that omits type checking entirely, relying on the assumption that input code is already valid for the target runtime. It uses scanner-based tokenization and single-pass co
Compiles newer JS features such as optional chaining, nullish coalescing, class fields, and numeric separators to older syntax.
Ce projet est un guide complet et une ressource éducative pour le langage TypeScript. Il couvre les principes fondamentaux du langage, incluant son système de typage structurel, l'analyse de type statique et le processus de transpilation des fichiers sources typés en JavaScript. Le matériel détaille comment modéliser des données complexes et une logique de type réutilisable en utilisant des génériques, des types conditionnels et des types mappés. Il explique également l'utilisation des fichiers de déclaration pour fournir une sécurité de type pour les bibliothèques JavaScript externes et l'intégration de la vérification de type dans des projets JavaScript existants via des annotations JSDoc. La portée du contenu s'étend aux modèles de programmation orientée objet, à la manipulation du DOM et à la configuration des comportements du compilateur. Il inclut des conseils sur la gestion de l'interopérabilité des modules, la mise en place de pipelines de build et l'utilisation de l'intelligence de l'éditeur pour une meilleure productivité des développeurs.
Explains the process of rewriting modern language features into older JavaScript versions for legacy environment support.