or
Sign in to turn on 1-Click ordering.
 
 
More Buying Choices
16 used & new from £28.66

Have one to sell? Sell yours here
 
   
Programming Language Processors in Java
 
 

Programming Language Processors in Java (Hardcover)

by Mr David Watt (Author), Deryck Brown (Author)
4.5 out of 5 stars  See all reviews (2 customer reviews)
RRP: £54.99
Price: £48.99 & this item Delivered FREE in the UK with Super Saver Delivery. See details and conditions
You Save: £6.00 (11%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In stock.
Dispatched from and sold by Amazon.co.uk. Gift-wrap available.

Only 1 left in stock--order soon (more on the way).

Want guaranteed delivery by Thursday, November 12? Choose Express delivery at checkout. See Details
10 new from £39.99 6 used from £28.66

Special Offers and Product Promotions


Frequently Bought Together

Customers buy this book with Compilers: Principles, Techniques and Tools by Alfred V. Aho

Programming Language Processors in Java + Compilers: Principles, Techniques and Tools
Price For Both: £98.33

Show availability and shipping details


Customers Who Bought This Item Also Bought

Database Systems: A Practical Approach to Design, Implementation and Management (International Computer Science Series)

Database Systems: A Practical Approach to Design, Implementation and Management (International Computer Science Series)

by Thomas Connolly
Introduction to the Theory of Computation

Introduction to the Theory of Computation

by Michael Sipser
4.7 out of 5 stars (3)  £42.49
Interaction Design: Beyond Human-computer Interaction

Interaction Design: Beyond Human-computer Interaction

by Helen Sharp
3.7 out of 5 stars (6)  £32.07
Compilers: Principles, Techniques and Tools

Compilers: Principles, Techniques and Tools

by Alfred V. Aho
4.5 out of 5 stars (13)  £49.34
The Mythical Man Month and Other Essays on Software Engineering

The Mythical Man Month and Other Essays on Software Engineering

by Frederick P. Brooks Jr.
4.3 out of 5 stars (26)  £13.79
Explore similar items

Product details

  • Hardcover: 436 pages
  • Publisher: Prentice Hall (7 Jan 2000)
  • Language English
  • ISBN-10: 0130257869
  • ISBN-13: 978-0130257864
  • Product Dimensions: 23.6 x 17.6 x 3 cm
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon.co.uk Sales Rank: 485,054 in Books (See Bestsellers in Books)

    Popular in this category:

    #29 in  Books > Computing & Internet > Programming > Compilers
  • See Complete Table of Contents

Customers Viewing This Page May Be Interested in These Sponsored Links

  (What is this?)
   Need help with Java? opens new browser window
Java.LivePerson.com  -  Get the Java code you need done right. Raved reviews. Online 24/7. 
   Java Courses - 7 Day opens new browser window
www.firebrandtraining.co.uk  -  Java Training Course from Firebrand Training formerly The Training Camp 
   Learn Programming opens new browser window
www.HomeLearningCourses.com  -  Learn programming, UK courses. Learn from home for a better future 
  
 

Product Description

Product Description

This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. The book aims to exemplify good software engineering principles at the same time as explaining the specific techniques needed to build compilers and interpreters.


From the Back Cover

David A Watt and Deryck F Brown
Programming Language Processors in Java
Compilers and Interpreters

This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. The book aims to exemplify good software engineering principles at the same time as explaining the specific techniques needed to build compilers and interpreters.
Features
* The book shows clearly how a simple compiler can be decomposed into a syntactic analyzer, a contextual analyzer, and a code generator, communicating via an abstract syntax tree.
* The book is accompanied by a complete working compiler and interpreter, provided via the Internet, and free of charge for educational use.
* The book contains numerous exercises, together with sample answers to selected exercises. It also contains a number of suggested projects, involving extensions to the accompanying compiler.
* All examples in the book are expressed in Java, and the compiler and interpreter are structured using object-oriented design patterns.
David Watt teaches algorithms and data structures, programming languages, and software design. Deryck Brown teaches compilers, object-oriented programming, operating systems, and software engineering.


Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product)
 
compilers
books compilers

Your tags: Add your first tag
 

What Do Customers Ultimately Buy After Viewing This Item?

Programming Language Processors in Java
81% buy the item featured on this page:
Programming Language Processors in Java 4.5 out of 5 stars (2)
£48.99
Effective Java: Second Edition
8% buy
Effective Java: Second Edition 4.8 out of 5 stars (6)
£17.99
Sams Teach Yourself Java 6 in 21 Days
6% buy
Sams Teach Yourself Java 6 in 21 Days 4.0 out of 5 stars (6)
£15.95
The Java Virtual Machine Specification (Java Series)
5% buy
The Java Virtual Machine Specification (Java Series) 4.0 out of 5 stars (1)
£37.99

 

Customer Reviews

2 Reviews
5 star:
 (1)
4 star:
 (1)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.5 out of 5 stars (2 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
18 of 18 people found the following review helpful:
4.0 out of 5 stars Smooth, 28 Jun 2001
An excellent book. I had to write the front end of a Java compiler quick for part of my final year project, and unfortunately chose Appel's unreadable dud 'Modern Compiler Implementation in Java' over this text - what a mistake!

This is an excellent, comprehensive and easy initiation in compiler implementation. On the language theory side of things, it gives the least you need to know (good news in my case) and focuses on concepts and how these translate into code - which is after all, the bottom line in understanding any computer system.

The style of writing of the text and code is first rate. Most other compiler texts show no guilt about using nasty hacks in impl. Its refreshing to to see an excellent object-oriented, pattern-based design and impl. used in this text that is also well documented.

Whether you read this book out of curiousity or professional interest, I'm sure you'll find it a satisfying read.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
5 of 5 people found the following review helpful:
5.0 out of 5 stars Simply the best Learing-by-Coding compiler book, 20 Feb 2005
By Jos van Roosmalen (The Netherlands, Europe) - See all my reviews
(REAL NAME)   
This is really the greatest 'Compiler for Dummies' book as of today. I own and studied all books (total arround 80) about compiler constructions you can buy in the world today plus a lot of out of print titles, so I know what you can buy on the market...

If you're looking for a learning-by-coding compiler book don't look futher. This is a great introbook for a Bachelor of Science of a Professional Bachelor student! If you have the money to buy only one compiler book buy this one. If you have the money to buy 2 books and you also know a bit C++, buy this one and 'Writting compilers and Interpreters' from Ronald Mak which also offers a pratical approach which is also nice for newbies but not that nice as this book.

If you have finished this book and want to get more theoretical insight or you're a Computer Science M.Sc student (like me), read 'Programming Language Pragmatics' from Mr. Scott, which don't present the material on a dry manner. This book covers all aspects of compilation and language design in greater detail! Be sure you have read (or master) an intro text like 'programming language processors in java' before starting books like 'programming language pragmatics'.

If you're a M.Sc. student and you're looking for a learning-by-coding book i recommend the books of Andrew Appel (Modern Compiler Implementation in Java) which covers advanced topics (optimization, register selection,etc). But beware: if you're new to compiler design forget Andrew Appels book, and buy this one because Appels would be a bit too difficult for you.

Back tot the 'Programming language processors in Java' book.

This is what I like and what not:

PROS:

* It gives some nice written theoretical introduction of the whole compilation process (e.g. what's LL and LR-parsing, how is runtime organization organized (stack, parameter passing, stackframes etc). It doesn't dive too deep, but you will be familiar with the topics. E.g. it explains how LL and LR parsing works (with some nice examples how to parse LL/LR simple English sentences), but it doesn't tell you what the advantages/disadvantages of both methods are. This is beyond the scope of this book. For these topics read later something else (e.g. 'programming language pragmiatcs')

* Not all Java code is printed to fill 1000 pages. Every codesnippet is well commented, all repeatative code is left out: you can download all the Java code. So this book is not one big listing.

* It gives you insight how to build a really nice Virtual Machine. The author is talking about an interpreter, but the compiler generates modern intermediate code (STORE,LOAD,CALL,JMP) and the VM execute this in a big WHILE-loop.

* Some learning-by-coding compiler books (e.g. 'Building your own compiler with C++' by Jim Holmes (not recommended)) explain only a silly subset of pascal (e.g. only assignment and writeline), but this book teach you 'mini Triangle-language' which also offers arrays, functions/procedures, records (structs), and parameter passing by reference/value. It also explains you those more difficult topics like parameter by reference passing is handled by the codegenerator.

* It has a nice chapter about runtime organization. This is a nice chapter for people which are new to e.g. processorarchitecture. This chapter explains you how local variables are stores (stack), how parameter passing to functions is working and how return values are passed back. Because the Interpreter (VM) which is introduced in the book, has a RISC-processor lookalike pseudo-instructionset (LOAD,STORE, JUMP etc instructions) this book is a nice intro in low level RISC assembly

CONS:

* I agree to the customer review of Mr. Yegge of July 12, 2004 that the Java Code is not always supernice. E.g. there is often java.lang.Object parameter passing which is later dangerous narrative casted. I do NOT agree with Mr. Yegge about his remarks on the Visitor pattern. The author explains why he is using the visitor pattern: to reduce coupling between the CodeGenerator or TypeChecker and the AST. On this point I like the design of the author. The idea of using the visitor pattern is nice, but it is somewhat bad implemented with those narrative casts.

Conclusion: I STRONGLY recommend this book for people who are new to compiler design.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

   


Listmania!


Look for similar items by category


Look for similar items by subject


Feedback

Ad

Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.