Formal languages and compilation

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Whereas many textbooks on formal languages and compilation focus on technological aspects, it is the elegance and simplicity of the underlying *theory* that allows students to acquire the fundamental paradigms of language structures, to avoid pitfalls such as ambiguity, and to adequately map structure to meaning.

Formal Languages and Compilation covers the fundamental concepts of formal languages and compilation, which are central to computer science and based on well-consolidated principles. It presents a comprehensive selection of topics and is based on rigorous definitions and algorithms, illustrated by many motivating examples, with a focus on the importance of combining theoretical concepts with practical applications.

In a clear, reader-friendly and simple minimalist way, this uniquely versatile textbook provides the essential principles and methods used for defining the syntax of artificial languages and implementing simple translators, as well as in designing syntax-directed translators. Readers require some background in programming, although detailed knowledge of a specific programming language is not necessary; they should also be somewhat familiar with basic set theory, algebra and logic.

Features and topics:

• Provides many pedagogical tools, such as slides and solutions for lecturers via the author’s website

• Unifies the concepts and notations used in the various approaches of parsing algorithms

• Concepts are illustrated with many realistic examples, to ease the understanding of the theory and the transfer to application

• Theoretical models of automata, transducers and formal grammars are used extensively

• Algorithms are described in a pseudo-code to avoid the disturbing details of a programming language, yet they are straightforward to convert to executable procedures

• Coverage of the algorithms for processing regular expressions and finite automata is concise and complete

• Systematically discusses ambiguous forms allowing readers to avoid pitfalls when designing grammars

• Unifies the concepts and notations used in different approaches, thus extending methods coverage with a reduced definitional apparatus

• Introduces static program analysis, moving from the baseline reached with finite automata and local languages

 

This comprehensive and clearly written text, based on many years of course instruction, will be welcomed as the ideal guide to the fundamentals of this field by advanced undergraduate and graduate students in computer science and computer engineering.

Stefano Crespi Reghizzi is a full professor of computer science at the Politecnico di Milano, Milan, Italy, where he has numerous years of experience teaching formal languages and compiler technology. In addition, he leads the department’s compiler research group.

 

Author(s): Stefano Crespi Reghizzi
Series: Texts in Computer Science
Edition: 1st
Publisher: Springer
Year: 2009

Language: English
Pages: 371
City: London
Tags: Mathematical Logic and Formal Languages

Front Matter....Pages 1-11
Introduction....Pages 1-3
Syntax....Pages 1-87
Finite Automata as Regular Language Recognizers....Pages 1-53
Pushdown Automata and Top-down Parsing....Pages 1-55
Bottom-Up and General Parsing....Pages 1-56
Translation Semantics and Static Analysis....Pages 1-94
Back Matter....Pages 1-11