Introduction to Compiler Construction in a Java World
Autor Bill Campbell, Swami Iyer, Bahar Akbal-Delibasen Limba Engleză Hardback – 21 noi 2012
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--/
Preț: 676.14 lei
Preț vechi: 845.18 lei
-20% Nou
Puncte Express: 1014
Preț estimativ în valută:
129.40€ • 134.41$ • 107.49£
129.40€ • 134.41$ • 107.49£
Carte tipărită la comandă
Livrare economică 01-15 februarie 25
Preluare comenzi: 021 569.72.76
Specificații
ISBN-13: 9781439860885
ISBN-10: 1439860882
Pagini: 382
Ilustrații: 93 black & white illustrations
Dimensiuni: 178 x 254 x 28 mm
Greutate: 0.86 kg
Ediția:1
Editura: CRC Press
Colecția Chapman and Hall/CRC
Locul publicării:Boca Raton, United States
ISBN-10: 1439860882
Pagini: 382
Ilustrații: 93 black & white illustrations
Dimensiuni: 178 x 254 x 28 mm
Greutate: 0.86 kg
Ediția:1
Editura: CRC Press
Colecția Chapman and Hall/CRC
Locul publicării:Boca Raton, United States
Public țintă
Upper undergraduate and graduate students in compiler courses; professionals interested in compilers.Cuprins
Compilation. Lexical Analysis. Parsing. Type Checking. JVM Code Generation. Translating JVM Code to MIPS Code. Register Allocation. Celebrity Compilers. Appendices. Bibliography. Index.
Notă biografică
Bill Campbell is an associate professor in the Department of Computer Science at the University of Massachusetts, Boston. Dr. Campbell has been teaching compilers for more than twenty years and has commercial experience working with AT&T, Intermetrics Inc., Apple Computer, and Entitlenet. His areas of expertise include software engineering, object-oriented analysis, design and programming, and programming language implementation.
Swami Iyer is a PhD candidate in the Department of Computer Science at the University of Massachusetts, Boston, where he has taught classes on introductory programming and data structures. His research interests are in the fields of dynamical systems, complex networks, and evolutionary game theory.
Bahar Akbal-Delibas is a PhD student in the Department of Computer Science at the University of Massachusetts, Boston, where she is the teaching assistant for the compilers course. Her research interests include structural bioinformatics and software modeling.
Swami Iyer is a PhD candidate in the Department of Computer Science at the University of Massachusetts, Boston, where he has taught classes on introductory programming and data structures. His research interests are in the fields of dynamical systems, complex networks, and evolutionary game theory.
Bahar Akbal-Delibas is a PhD student in the Department of Computer Science at the University of Massachusetts, Boston, where she is the teaching assistant for the compilers course. Her research interests include structural bioinformatics and software modeling.
Recenzii
"… 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
—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
Descriere
Immersing students in Java and the JVM, this text enables a deep understanding of the Java programming language and its implementation. It focuses on design, organization, and testing, helping students learn good software engineering skills and become better programmers. 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. Fully documented Java code for the compiler is accessible on a supplementary website.