Beng Kee Kiong | Compiler Technology | Buch | 978-0-7923-8018-4 | sack.de

Buch, Englisch, Band 422, 210 Seiten, HC runder Rücken kaschiert, Format (B × H): 160 mm x 241 mm, Gewicht: 1110 g

Reihe: The Springer International Series in Engineering and Computer Science

Beng Kee Kiong

Compiler Technology

Tools, Translators and Language Implementation
1997
ISBN: 978-0-7923-8018-4
Verlag: Springer US

Tools, Translators and Language Implementation

Buch, Englisch, Band 422, 210 Seiten, HC runder Rücken kaschiert, Format (B × H): 160 mm x 241 mm, Gewicht: 1110 g

Reihe: The Springer International Series in Engineering and Computer Science

ISBN: 978-0-7923-8018-4
Verlag: Springer US


Compiler technology is fundamental to computer science since it provides the means to implement many other tools. It is interesting that, in fact, many tools have a compiler framework - they accept input in a particular format, perform some processing and present output in another format. Such tools support the abstraction process and are crucial to productive systems development.
The focus of is to enable quick development of analysis tools. Both lexical scanner and parser generator tools are provided as supplements to this book, since a hands-on approach to experimentation with a toy implementation aids in understanding abstract topics such as parse-trees and parse conflicts. Furthermore, it is through hands-on exercises that one discovers the particular intricacies of language implementation.
is suitable as a textbook for an undergraduate or graduate level course on compiler technology, and as a reference for researchers and practitioners interested in compilers and language implementation.
Beng Kee Kiong Compiler Technology jetzt bestellen!

Zielgruppe


Research


Autoren/Hrsg.


Weitere Infos & Material


1. Introduction to Language Implementation.- 1.1 Translator Strategies.- 1.2 Translator Components.- 1.3 Implementation of Translator Phases.- 1.4 Summary.- 1.5 Questions.- 2. Language Definition.- 2.1 BNF Notations.- 2.2 Construction of Recursive Descent Parsers.- 2.3 Grammar Restrictions.- 2.4 Summary.- 2.5 Questions.- 3. Lexical Scanners.- 3.1 Scanner Framework.- 3.2 Formalisms.- 3.3 Constructing Scanners from Specifications.- 3.4 Constructing a Finite State Machine from a Regular Grammar.- 3.5 Constructing a Finite State Machine from a Regular Expression.- 3.6 Deterministic State Transition.- 3.7 Optimizing a Finite State Machine.- 3.8 Implementation of a Finite State Machine.- 3.9 Considerations for Scanner Implementation.- 3.10 Summary.- 3.11 Questions.- 4. Syntactic Analysis.- 4.1 Recursive Descent Parsing and Top-down Analysis.- 4.2 Bottom-up Analysis.- 4.3 Tree Construction.- 4.4 Generating Parse Configurations.- 4.5 Generating LR(0) Parse Tables.- 4.6 Parsing Conflicts.- 4.7 Extending LR(0) Tables for LR(1) Parsing.- 4.8 Parse Table Optimization: SLR(1) and LALR(1) Methods.- 4.9 Parsing With non-LL(1) or non-LR(1) Grammars.- 4.10 Summary.- 4.11 Questions.- 5. Incorporating Semantic Analysis.- 5.1 Syntax-Directed Analysis.- 5.2 Semantic Analysis in a Recursive Descent Parser.- 5.3 Specifying Action Routines in Generated Parsers.- 5.4 Attribute Propagation within Parser Drivers.- 5.5 yacc Example.- 5.6 Inherited and Synthesized Attribute Propagation.- 5.7 Summary.- 5.8 Questions.- 6. Semantic Processing.- 6.1 General Structure of Programming Languages.- 6.2 Symbol Tables.- 6.3 Type Definitions.- 6.4 Processing Summary.- 6.5 Formal Specifications via Attribute Grammars.- 6.6 Example Specification of a Block Structured Language.- 6.7 Attribute Evaluation Strategies.- 6.8 Summary.- 6.9 Questions.- 7. The Program Run-Time Environment.- 7.1 Program Representations.- 7.2 Storage Allocations.- 7.3 Dynamic Variables.- 7.4 Summary.- 7.5 Questions.- 8. Intermediate Code and Interpreters.- 8.1 Intermediate Representation.- 8.2 Syntax-Directed Translation.- 8.3 Representing a Nested Block-Structured Language.- 8.4 Interpreter Implementation.- 8.5 Efficiency Improvements.- 8.6 Summary.- 8.7 Questions.- 9. Code Generation.- 9.1 Macro Expansion.- 9.2 Register Allocation.- 9.3 Instruction Sequencing.- 9.4 Instruction and Addressing Mode Selection.- 9.5 Summary.- 9.6 Questions.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.