Un compilateur est un programme qui traduit du code source écrit dans un langage de programmation de haut niveau (comme C, Rust, Go ou Java) en code exécutable par la machine, généralement sous forme de :
- code machine natif (instructions binaires directement exécutables par le processeur),
- ou parfois en code intermédiaire (comme le bytecode de la JVM pour Java), qui sera ensuite interprété ou compilé à l’exécution (just-in-time compilation).
Contrairement à un interpréteur — qui lit et exécute le code ligne par ligne au moment de l’exécution —, un compilateur effectue cette traduction avant l’exécution, produisant un fichier binaire autonome (ex. : .exe, .out, .dll).
Exemples de compilateurs
gcc/g++→ pour C / C++rustc→ pour Rustjavac→ compile le Java en bytecode (pas directement en langage machine)tsc(TypeScript Compiler) → transforme TypeScript en JavaScript. TypeScript Compiler est techniquement un transpilateur, et non un compilateur au sens strict du terme.