1.

Record Nr.

UNINA9910829947203321

Autore

Dos Reis Anthony J.

Titolo

Compiler construction using Java, JavaCC, and Yacc / / Anthony J. Dos Reis

Pubbl/distr/stampa

Hoboken, New Jersey : , : Wiley-IEEE Computer Society, , c2012

[Piscataqay, New Jersey] : , : IEEE Xplore, , [2012]

ISBN

1-283-91786-6

1-118-11277-6

1-118-11287-3

1-118-11276-8

Descrizione fisica

1 online resource (655 p.)

Classificazione

COM010000

Disciplina

005.453

Soggetti

Compilers (Computer programs)

Java (Computer program language)

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Note generali

Description based upon print version of record.

Nota di bibliografia

Includes bibliographical references and index.

Nota di contenuto

Front Matter -- Strings, Languages, and Compilers -- Context-Free Grammars, Part 1 -- Context-free Grammars, Part 2 -- Context-Free Grammars, Part 3 -- Chomsky's Hierarchy (Optional) -- Top-Down Parsing -- LL(1) Grammars -- Table-Driven Stack Parser (Optional) -- Recursive-Descent Parsing -- Recursive-Descent Translation -- Assembly Language -- S1₇A Simple Compiler -- JavaCC (Optional) -- Building on S2 -- Compiling Control Structures -- Compiling Programs in Functional Form -- Finite Automata -- Capstone Project: Implementing Grep Using Compiler Technology -- Compiling to a Register-Oriented Architecture -- Optimization -- Interpreters -- Bottom-up Parsing -- Yacc -- Appendix A: Stack Instruction Set -- Appendix B: Register Instruction Set.

Sommario/riassunto

A student-friendly, course-friendly guide to compiler theory, applications, and programming technologyCompiler 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 currentlyavailable.Far easier to read and understand than any other compiler guide, this booksets a new standard for learning this invaluable skill. It provides:. Strong coverage of formal languages, including context-sensitive and unrestricted languages as well as regular and context-free languages. A clear exposition of compiler design and implementation theory . Numerous well-defined projects, using source language with six levels of complexity. A complete teaching support software package that evaluates compiler projects for correctness, run time, and size of code, and runs on multiple platforms. Immediate feedback for students on their projectsCompiler 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.