L'argomento mi sembra un po' troppo vasto per essere trattato in un post pubblicato su un forum, anche perché ogni linguaggio ha una genesi, una storia e delle motivazioni diverse, senza considerare che esistono molti aspetti (descritti in testi sacri, tra i quali i
Dragon Books) da prendere in considerazione nell'implementazione di un compilatore.