Introduction to Compiler Design

The third edition of this textbook has been fully revised and adds material about the SSA form, polymorphism, garbage collection, and pattern matching. It presents techniques for making realistic compilers for simple to intermediate-complexity programming languages. The techniques presented in the b...

Full description

Bibliographic Details
Main Author: Mogensen, Torben Ægidius
Format: eBook
Language:English
Published: Cham Springer International Publishing 2024, 2024
Edition:3rd ed. 2024
Series:Undergraduate Topics in Computer Science
Subjects:
Online Access:
Collection: Springer eBooks 2005- - Collection details see MPG.ReNa
LEADER 02397nmm a2200277 u 4500
001 EB002190321
003 EBX01000000000000001327786
005 00000000000000.0
007 cr|||||||||||||||||||||
008 240104 ||| eng
020 |a 9783031464607 
100 1 |a Mogensen, Torben Ægidius 
245 0 0 |a Introduction to Compiler Design  |h Elektronische Ressource  |c by Torben Ægidius Mogensen 
250 |a 3rd ed. 2024 
260 |a Cham  |b Springer International Publishing  |c 2024, 2024 
300 |a XXII, 287 p. 139 illus  |b online resource 
505 0 |a Lexical analysis -- Syntax analysis.-Scopes and symbol tables -- Interpretation -- Type checking.-Intermediate-code generation -- Machine-code generation -- Register allocation -- Functions -- Data-flow analysis and optimisation -- Optimisation for loops -- More language features -- Set notation and concepts -- Index 
653 |a Compilers (Computer programs) 
653 |a Compilers and Interpreters 
041 0 7 |a eng  |2 ISO 639-2 
989 |b Springer  |a Springer eBooks 2005- 
490 0 |a Undergraduate Topics in Computer Science 
028 5 0 |a 10.1007/978-3-031-46460-7 
856 4 0 |u https://doi.org/10.1007/978-3-031-46460-7?nosfx=y  |x Verlag  |3 Volltext 
082 0 |a 005.45 
520 |a The third edition of this textbook has been fully revised and adds material about the SSA form, polymorphism, garbage collection, and pattern matching. It presents techniques for making realistic compilers for simple to intermediate-complexity programming languages. The techniques presented in the book are close to those used in professional compilers, albeit in places slightly simplified for presentation purposes. "Further reading" sections point to material about the full versions of the techniques. All phases required for translating a high-level language to symbolic machine language are covered, and some techniques for optimising code are presented. Type checking and interpretation are also included. Aiming to be neutral with respect to implementation languages, algorithms are mostly presented in pseudo code rather than in any specific language, but suggestions are in many places given for how these can be realised in different language paradigms. Depending on how much of the material from the book is used, it is suitable for both undergraduate and graduate courses for introducing compiler design and implementation.