Il testo affronta gli argomenti principali di un corso generale sui linguaggi di programmazione, con un approccio elementare che richiede prerequisiti minimi. Gli autori hanno preferito identificare le caratteristiche comuni ad ampie classi di linguaggi, piuttosto che presentare un catalogo di tutte le opzioni esistenti. Gli esempi di codice sono espressi in uno pseudolinguaggio che permette di descrivere efficacemente gli aspetti più rilevanti. Tutti i capitoli presentano inoltre una breve serie di esercizi, intesi come banco di prova per la comprensione del materiale. La seconda edizione presenta tre capitoli del tutto nuovi che affrontano la compilazione, con la presentazione dei linguaggi regolari e degli analizzatori lessicali e, quindi, dei linguaggi liberi e degli analizzatori sintattici, e la programmazione concorrente. Il testo è pensato in primo luogo per gli studenti dei corsi di laurea in Informatica e Ingegneria informatica, ma è adatto anche per il professionista che voglia approfondire la propria conoscenza dei meccanismi che stanno dietro ai linguaggi che utilizza.