Compiler Construction Using Java, JavaCC, and Yacc (Hardcover)

Anthony J. Dos Reis

  • 出版商: Wiley
  • 出版日期: 2011-12-20
  • 定價: $1,480
  • 售價: 9.5$1,406
  • 語言: 英文
  • 頁數: 664
  • 裝訂: Hardcover
  • ISBN: 0470949597
  • ISBN-13: 9780470949597
  • 相關分類: Java 程式語言Compiler
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

<內容簡介>

Compiler construction is a tricky subject, involving theory, the application of that theory, and programming technology. Virtually every day, advances in computer technology propel advances in compiler technology. Compiler Construction Using Java, JavaCC, and Yacc covers every topic essential to learning compilers from the ground up and is accompanied by a powerful and flexible software package for evaluating projects as well as several tutorials, well-defined projects, and test cases. While the coverage of JavaCC is entirely optional, this book provides the only comprehensive introduction to the topic currently available.

Far easier to read and understand than any other compiler guide, this book sets a new standard for learning this invaluable skill. It provides:

1. Strong coverage of formal languages, including context-sensitive and unrestricted languages as well as regular and context-free languages

2. A clear exposition of compiler design and implementation theory

3. Numerous well-defined projects, using source language with six levels of complexity

4. A complete teaching support software package that evaluates compiler projects for correctness, run time, and size of code, and runs on multiple platforms

5. Immediate feedback for students on their projects

Compiler Construction Using JavaTM, JavaCC, and Yacc provides substantial support for each project, many of which are incremental enhancements of previous projects. The goals at each new level are challenging but achievable and can be reached in several different ways, for example, by writing a compiler or interpreter by hand, with JavaCC, or with Yacc.

<章節目錄>
Preface xv
Ch1: Strings, Languages, and Compilers
Ch2: Context-Free Grammars, Part 1
Ch3: Context-Free Grammars, Part 2
Ch4: Context-Free Grammars, Part 3
Ch5: Chomsky’s Hierarchy
Ch6: Top-Down Parsing
Ch7: LL(1) Grammars
Ch8: Table-Driven Stack Parser
Ch9: Recursive-Descent Parsing
Ch10: Recursive-Descent Translation
Ch11: Assembly Language
Ch12: S1—A Simple Compiler
Ch13: JavaCC
Ch14: Building on S2
Ch15: Compiling Control Structures
Ch16: Compiling Programs in Functional Form
Ch17: Finite Automata
Ch18: Capstone Project: Implementing Grep Using Compiler Technology
Ch19: Compiling to a Register-Oriented Architecture
Ch 20: Optimization
Ch21: Interpreters
Ch22: Bottom-Up Parsing
Ch23: yacc 587
Appendix A. Stack Instruction Set
Appendix B. Register Instruction Set
References
Index


商品描述(中文翻譯)

內容簡介:
《使用Java、JavaCC和Yacc進行編譯器構建》涵蓋了從頭開始學習編譯器所需的每個重要主題,並附帶一個功能強大且靈活的軟件包,用於評估項目以及幾個教程、明確定義的項目和測試案例。儘管JavaCC的內容是可選的,但這本書提供了目前唯一全面介紹該主題的資料。

這本書比其他任何編譯器指南都更容易閱讀和理解,為學習這項寶貴技能設定了新的標準。它提供了:

1. 強大的形式語言覆蓋,包括上下文敏感和無限制語言以及正則和上下文無關語言。
2. 對編譯器設計和實現理論的清晰闡述。
3. 多個明確定義的項目,使用具有六個不同複雜度級別的源語言。
4. 一個完整的教學支持軟件包,用於評估編譯器項目的正確性、運行時間和代碼大小,並可在多個平台上運行。
5. 學生對其項目的即時反饋。

《使用JavaTM、JavaCC和Yacc進行編譯器構建》為每個項目提供了大量支持,其中許多項目是對先前項目的增量增強。每個新級別的目標都具有挑戰性但可實現,可以通過手動編寫編譯器或解釋器、使用JavaCC或Yacc等多種方式實現。

章節目錄:
前言 xv
第1章:字符串、語言和編譯器
第2章:上下文無關文法,第1部分
第3章:上下文無關文法,第2部分
第4章:上下文無關文法,第3部分
第5章:Chomsky的階層
第6章:自上而下解析
第7章:LL(1)文法
第8章:基於表的堆棧解析器
第9章:遞歸下降解析
第10章:遞歸下降翻譯
第11章:組合語言
第12章:S1-一個簡單的編譯器
第13章:JavaCC
第14章:在S2的基礎上構建
第15章:編譯控制結構
第16章:以函數形式編譯程序
第17章:有限自動機
第18章:專題項目:使用編譯器技術實現Grep
第19章:編譯到面向寄存器的架構
第20章:優化
第21章:解釋器
第22章:自下而上解析
第23章:yacc 587
附錄A. 堆棧指令集
附錄B. 寄存器指令集
參考文獻
索引