Get Free Shipping on orders over $79
Introduction to Compiler Construction in a Java World - Bill Campbell

Introduction to Compiler Construction in a Java World

By: Bill Campbell, Swami Iyer, Bahar Akbal-Delibas

Hardcover | 21 November 2012 | Edition Number 1

At a Glance

Hardcover


$330.75

or 4 interest-free payments of $82.69 with

 or 

Ships in 15 to 25 business days

Immersing students in Java and the Java Virtual Machine (JVM), Introduction to Compiler Construction in a Java World enables a deep understanding of the Java programming language and its implementation. The text focuses on design, organization, and testing, helping students learn good software engineering skills and become better programmers.

The book covers all of the standard compiler topics, including lexical analysis, parsing, abstract syntax trees, semantic analysis, code generation, and register allocation. The authors also demonstrate how JVM code can be translated to a register machine, specifically the MIPS architecture. In addition, they discuss recent strategies, such as just-in-time compiling and hotspot compiling, and present an overview of leading commercial compilers. Each chapter includes a mix of written exercises and programming projects.

By working with and extending a real, functional compiler, students develop a hands-on appreciation of how compilers work, how to write compilers, and how the Java language behaves. They also get invaluable practice working with a non-trivial Java program of more than 30,000 lines of code. Fully documented Java code for the compiler is accessible at http://www.cs.umb.edu/j--/

Industry Reviews

"... a strong contribution to the ... covers most standard compiler construction techniques well, and does a good job of exposing students to actual implementation environments. ... Highly recommended. Upper-division undergraduates and above.
-C. Vickery, Queens College of CUNY in CHOICE Magazine

"... an excellent book to use for individual study or in an upper-level undergraduate or first-year graduate course. No previous background in the theory of computation is needed, but a solid Java background is essential and some previous experience with programming languages (scope, stack allocation, types, and so on) would be useful. Knowledge of assembly language programming will be helpful if the course will include the chapters on register allocation and translating to MIPS."
-Computing Reviews, March 2014

More in Information Technology General Issue

Against the Machine : On the Unmaking of Humanity - Paul Kingsnorth

RRP $55.00

$42.75

22%
OFF
Doppelganger : A Trip Into the Mirror World - Naomi Klein

RRP $26.99

$22.99

15%
OFF
Gilded Rage : Elon Musk and the Radicalization of Silicon Valley - Jacob Silverman
Ethics, Information, and Technology : A Tangled Web - Kip Currier

RRP $110.00

$96.75

12%
OFF
Careless People : A story of where I used to work - Sarah Wynn-Williams

RRP $24.99

$21.75

13%
OFF
Man-Made : How the bias of the past is being built into the future - Tracey Spicer
Superbloom : How Technologies of Connection Tear Us Apart - Nicholas Carr
As If Human : Ethics and Artificial Intelligence - Nigel Shadbolt

RRP $26.95

$22.99

15%
OFF
The Art of Game Design : A Book of Lenses, Third Edition - Jesse  Schell
Think Like a Stoic : The Ancient Path to a Life Well Lived - Ken Mogi
Building a Scalable Data Warehouse with Data Vault 2.0 - Dan Linstedt
Guide to Health Informatics : 3rd Edition - Enrico  Coiera

RRP $141.00

$104.99

26%
OFF
Business Driven Information Systems ISE : 9th Edition - Paige Baltzan
Computer Organization and Architecture, Global Edition : 11th Edition - William Stallings