Kurz erklärt
Ein Compiler übersetzt den gesamten Quelltext einer Programmiersprache in eine andere Form – meist in Maschinencode oder Bytecode –, bevor das Programm läuft.
Genauer
Dabei prüft er Syntax und (bei statisch typisierten Sprachen) Typen und meldet Fehler schon vor dem Start. Das Ergebnis läuft anschließend ohne weitere Übersetzung. Compiler-Sprachen sind unter anderem C, C++, Rust, Go, Pascal und Fortran; Java und C# kompilieren zu Bytecode (Bytecode), den eine virtuelle Maschine ausführt.