Transpilateur – compilateur source à source

Un transpilateur est un outil qui traduit du code source écrit dans un langage de programmation vers du code source sémantiquement équivalent dans un autre langage de même niveau d’abstraction — souvent un langage plus largement supporté ou plus ancien.

Contrairement à un compilateur classique, qui produit du code machine (ou bytecode exécutable), un transpilateur génère du code lisible, maintenable et destiné à être relu ou exécuté par un autre moteur d’exécution.

Exemple clé :

  • tsc (TypeScript Compiler) → transforme TypeScript (langage typé, moderne) en JavaScript (langage interprété par les navigateurs).
    → Il ne produit pas de langage machine, mais du code source JavaScript fonctionnellement équivalent.

D’autres exemples :

  • Babel : transpile JavaScript moderne (ES2022+) en JavaScript compatible avec les anciens navigateurs.
  • JSX (dans React) : transpilé en appels React.createElement().
  • Certains outils convertissent Python en JavaScript (ex. : Transcrypt), ou C++ en WebAssembly texte (wat).

Règle simple :

  • Si la sortie est du code machinecompilateur.
  • Si la sortie est du code source dans un autre langage de haut niveautranspilateur.
Les contenus de définition restent publics. Les ressources (outils, grilles, supports) liées à cette fiche sont disponibles dans l’espace membre.