Cantitate/Preț
Produs

Compiler Technology

Autor Derek Beng Kee Kiong
en Limba Engleză Hardback – 31 oct 1997
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 Compiler Technology: Tools, Translators and Language Implementation 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.
Compiler Technology: Tools, Translators and 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.
Citește tot Restrânge

Preț: 97232 lei

Preț vechi: 121539 lei
-20%

Puncte Express: 1458

Carte tipărită la comandă

Livrare economică 27 iulie-10 august

Livrare prin curier în România Termenul estimat este afișat lângă disponibilitate.
Transport gratuit pentru acest produs Plată online sau ramburs, în funcție de opțiunile comenzii.
Retur gratuit în 14 zile Comandă securizată și suport în română.

Specificații

ISBN-13: 9780792380184
ISBN-10: 0792380185
Pagini: 210
Ilustrații: XVIII, 210 p.
Dimensiuni: 160 x 241 x 18 mm
Greutate: 0.52 kg
Ediția:1997 edition
Editura: Springer Us
Locul publicării:New York, NY, United States

Public țintă

Research

Cuprins

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.