Compiler Construction Using Java, JavaCC, and Yacc (Hardcover)
暫譯: 使用 Java、JavaCC 和 Yacc 的編譯器建構 (精裝版)

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
Ch1: 字串、語言與編譯器
Ch2: 上下文無關文法,第 1 部分
Ch3: 上下文無關文法,第 2 部分
Ch4: 上下文無關文法,第 3 部分
Ch5: 蔡姆斯基層次
Ch6: 自上而下的解析
Ch7: LL(1) 文法
Ch8: 表驅動堆疊解析器
Ch9: 遞歸下降解析
Ch10: 遞歸下降翻譯
Ch11: 組合語言
Ch12: S1—一個簡單的編譯器
Ch13: JavaCC
Ch14: 基於 S2 的建構
Ch15: 編譯控制結構
Ch16: 編譯函數形式的程式
Ch17: 有限自動機
Ch18: 頂石專案:使用編譯器技術實現 Grep
Ch19: 編譯到寄存器導向架構
Ch20: 優化
Ch21: 解釋器
Ch22: 自下而上的解析
Ch23: yacc 587
附錄 A. 堆疊指令集
附錄 B. 寄存器指令集
參考文獻
索引