Chapter 7 covers run-time environments, especially management of the run-time stack and garbage collection. Chapter 6 takes the theory of Chapter 5 and shows how to use it to generate intermediate code for a typical programming language. Chapter 5 introduces the principal ideas in syntax-directed de nitions and syntax-directed translations. vĬhapter 4 covers the major parsing methods, top-down (recursive-descent, LL) and bottom-up (LR and its variants). This material is fundamental to text-processing of all sorts. Chapter 3 covers lexical analysis, regular expressions, nite-state machines, and scanner-generator tools. The compiler itself appears in the appendix. Chapter 2 develops a miniature compiler and introduces many of the important concepts, which are then developed in later chapters. Here is an outline of the chapters: Chapter 1 contains motivational material and also presents some background issues in computer architecture and programming-language principles. It is common to cover the rst half in an undergraduate course and the second half of the book | stressing code optimization | in a second course at the graduate or mezzanine level. Use of the Book It takes at least two quarters or even two semesters to cover all or most of the material in this book. We therefore emphasize problems that are most commonly encountered in designing a language processor, regardless of the source language or target machine. Yet the models, theory, and algorithms associated with a compiler can be applied to a wide range of problems in software design and software development. We recognize that few readers will build, or even maintain, a compiler for a major programming language. Thus, our philosophy from previous versions of the book has not changed. And much of the \front-end" technology | grammars, regular expressions, parsers, and syntax-directed translators | are still in wide use. It is now used in tools that nd bugs in software, and most importantly, nd security holes in existing code. Perhaps most interestingly, the venerable technology of code optimization has found use outside compilers. Computer architectures oer a variety of resources of which the compiler designer must take advantage. Programming languages have evolved to present new compilation problems. Preface In the time since the 1986 edition of this book, the world of compiler design has changed signi cantly. For information on obtaining permission for use of material in this work, please submit a written request to Pearson Education, Inc., Rights and Contracts Department, 75 Arlington Street, Suite 300, Boston, MA 02116, fax your request to 61, or e-mail at. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. Compilers, principles, techniques, and tools. of: Compilers, principles, techniques, and tools / Alfred V. Library of Congress Cataloging-in-Publication Data Compilers : principles, techniques, and tools / Alfred V. This interior of this book was composed in LATEX. Where those designations appear in this book, and Addison-Wesley was aware of a trademark claim, the designations have been printed in initial caps or all caps. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Scott Ullman of Strange Tonic Productions (Joe Vetere Carol Melville Greg Tobin Michael Hirsch Matt Goldstein Katherine Harutunian Jeffrey Holcomb Joyce Cosentino Wells Marianne Groth Bethany Tidd Michelle Brown Sarah Milmore Publisher Executive Editor Acquisitions Editor Project Editor Associate Managing Editor Cover Designer Digital Assets Manager Media Producer Senior Marketing Manager Marketing Assistant Senior Author Support/ Technology Specialist Senior Manufacturing Buyer Lam Stanford University Ravi Sethi Avaya Jeffrey D. For more Free eBooks and educational material visit Uploaded By $am$exy98 theBooksĬompilers Principles, Techniques,
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |