Pod koniec lat 50. zaproponowano po raz pierwszy maszynowe języki programowania, w następstwie czego powstały pierwsze, eksperymentalne kompilatory. Pierwszy kompilator napisała Grace Hopper w 1952 dla języka A-0. Uznaje się, że ekipa FORTRAN z IBM, prowadzona przez Johna Backusa, wprowadziła do użycia pierwszy kompletny kompilator w 1957. W 1960 COBOL był jednym z pierwszych języków, który można było kompilować na różnych architekturach.
Wczesne kompilatory były pisane w asemblerze. Pierwszym kompilatorem zdolnym do skompilowania własnego kodu źródłowego napisanego w języku wysokiego poziomu był kompilator języka Lisp, stworzony przez Harta i Levina z MIT w 1962. Od lat siedemdziesiątych stało się powszechną praktyką implementowanie kompilatora w języku przezeń kompilowanym, pomimo że zarówno Pascal, jak i C, był chętnie wybierany przy implementacji. Problem konstrukcji samokompilującego się kompilatora określa się mianem bootstrap – pierwszy kompilator musi być albo skompilowany kompilatorem napisanym w innym języku, albo (jak w przypadku kompilatora języka Lisp autorstwa Harta i Levina) kompilowany przez uruchomienie kompilatora w interpreterze.