Linguaggi Formali e Compilazione

Linguaggi Formali e Compilazione

Por Angelo Morzenti, Sebastian Castañeda Hernández, Olga Lucia Jaramillo, Luca Breveglieri, Stefano Crespi Reghizzi, Jorge Velásquez

Formato: ePub  (Adobe DRM)
Disponibilidad: Descarga inmediata

Sinopsis

I compilatori traducono i linguaggi artificiali (come Java e XML) nelle rappresentazioni usate dalle macchine di calcolo: senza di essi non esisterebbe l’informatica. I concetti della compilazione hanno avuto origine nella linguistica strutturale e nella logica matematica, da cui si sono sviluppati gli algoritmi e i metodi di progetto che hanno realizzato innumerevoli linguaggi. Il testo espone in modo piano e rigoroso le grammatiche formali, gli automi, gli algoritmi di analisi sintattica, le relazioni di traduzione e gli automi traduttori, le traduzioni guidate dalla sintassi e le funzioni semantiche, terminando con l’analisi statica del flusso nei programmi. Molti esempi, semplici ma realistici, conducono il lettore verso la comprensione analitica e la capacita? progettuale delle tecniche elementari di compilazione. L’esperienza degli autori nella ricerca e sviluppo su linguaggi e compilatori si riflette nella selezione degli argomenti, sempre motivata da finalita? applicativa e da economia concettuale. L’opera vuole trovare un giusto medio tra i testi di orientamento puramente teorico e i manuali dei compilatori. Il passaggio dagli algoritmi all’implementazione e? sufficientemente delineato, senza prolissita?, affinche? un lettore di cultura informatica possa compierlo da solo. Al termine del percorso, il lettore comprendera? il funzionamento delle parti essenziali di un compilatore, conoscera? gli algoritmi usati negli strumenti (scanner parser generator) e potra? progettare semplici linguaggi e traduttori sintattici. Il testo e? adatto a un corso universitario di cinque crediti per studenti con almeno due anni di informatica alle spalle. Esso e? la base per approfondimenti specialistici in piu? direzioni, quali: l’ottimizzazione del codice-macchina, i sistemi anti-intrusione, i linguaggi interattivi e grafici, i metodi per il trattamento del linguaggio naturale e i linguaggi per l’accesso ai grandi dati della Rete.

Jorge Velásquez