Cantitate/Preț
Produs

Compiler Technology: Tools, Translators and Language Implementation: The Springer International Series in Engineering and Computer Science, cartea 422

Autor Derek Beng Kee Kiong
en Limba Engleză Paperback – 11 oct 2012
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

Din seria The Springer International Series in Engineering and Computer Science

Preț: 94563 lei

Preț vechi: 118204 lei
-20%

Puncte Express: 1418

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: 9781461377849
ISBN-10: 1461377846
Pagini: 232
Ilustrații: XVIII, 210 p.
Dimensiuni: 155 x 235 x 12 mm
Greutate: 0.33 kg
Ediția:Softcover reprint of the original 1st ed. 1997
Editura: Springer Us
Colecția Springer
Seria The Springer International Series in Engineering and Computer Science

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.