Dalle FAQ di comp.compilers :
"Programmazione di un personal computer" di Per Brinch Hansen Prentice-Hall 1982 ISBN 0-13-730283-5
Questo libro dal titolo sfortunato spiega la progettazione e la creazione di un ambiente di programmazione per utente singolo per i micro, usando un linguaggio simile a Pascal chiamato Edison. L'autore presenta tutto il codice sorgente e le spiegazioni per l'implementazione passo-passo di un compilatore Edison e di un semplice sistema operativo di supporto, tutti scritti in Edison stesso (tranne per un piccolo kernel di supporto scritto in un assemblatore simbolico per PDP 11/23; il la fonte completa può anche essere ordinata per il PC IBM).
Le cose più interessanti di questo libro sono: 1) la sua capacità di dimostrare come creare un compilatore e un sistema operativo completi, autonomi, autosufficienti e utili, e 2) l'interessante discussione sulla progettazione del linguaggio e sui problemi di specifica e commercio- offs nel capitolo 2.
"Brinch Hansen su Pascal Compilers" di Per Brinch Hansen Prentice-Hall 1985 ISBN 0-13-083098-4
Un altro libro di pragmatica pesante sulla teoria della luce, ecco come codificare. L'autore presenta la progettazione, l'implementazione e il codice sorgente completo per un compilatore e un interprete di codice p per Pascal- (Pascal "meno"), un sottoinsieme Pascal con tipi booleani e interi (ma senza caratteri, real, tipi di sottorange o elencati) , definizioni costanti e variabili e tipi di array e record (ma nessun tipo impacchettato, variante, set, puntatore, senza nome, rinominato o file), espressioni, istruzioni di assegnazione, definizioni di procedure nidificate con valore e parametri variabili, se istruzioni, mentre istruzioni, e blocchi di inizio-fine (ma nessuna definizione di funzione, parametri procedurali, istruzioni goto ed etichette, istruzioni case, istruzioni repeat, per istruzioni e con istruzioni).
Il compilatore e l'interprete sono scritti in Pascal * (Pascal "star"), un sottoinsieme Pascal ampliato con alcune funzionalità in stile Edison per la creazione di sistemi di sviluppo software. Un compilatore Pascal * per il PC IBM viene venduto dall'autore, ma è facile portare il compilatore Pascal del libro su qualsiasi comoda piattaforma Pascal.
Questo libro semplifica la progettazione e l'implementazione di un compilatore. Mi piace particolarmente il modo in cui l'autore si preoccupa di qualità, affidabilità e test. Il compilatore e l'interprete possono essere facilmente utilizzati come base per un linguaggio più coinvolto o un progetto di compilatore, specialmente se si preme per avviare rapidamente qualcosa.