What really happens when a program runs? Essentials of Programming Languages teaches the fundamental concepts of programming languages through numerous short programs, or "interpreters," that actually implement the features of a language. Nearly 300 exercises using these programs provide a hands-on understanding of programming principles that is hard, if not impossible, to achieve by formal study alone. In an approach that is uniquely suited to mastering a new level of programming structure, the authors derive a sequence of interpreters that begins with a high-level operational specification (close to formal semantics) and ends with what is effectively assembly language a process involving programming transformation techniques that should be in the toolbox of every programmer.
The first four chapters provide the foundation for an indepth study of programming languages, including most of the features of Scheme, needed to run the language-processing programs of the book. The next four chapters form the core of the book, deriving a sequence of interpreters ranging from very high- to very low-level. The authors then explore variations in programming language semantics, including various parameter-passing techniques and object-oriented languages, and describe techniques for transforming interpreters that ultimately allow the interpreter to be implemented in any low-level language. They conclude by discussing scanners and parsers and the derivation of a compiler and virtual machine from an interpreter.
Daniel P. Friedman is Professor of Computer Science at Indiana University. Mitchell Wand is Professor in the College of Computer Science at Northeastern University. Christopher T. Haynes is Associate Professor in the Computer Science Department at Indiana University.
"synopsis" may belong to another edition of this title.
Daniel P. Friedman is Professor of Computer Science at Indiana University and is the author of many books published by the MIT Press, including The Little Schemer (fourth edition, 1995), The Seasoned Schemer (1995), A Little Java, A Few Patterns (1997), each of these coauthored with Matthias Felleisen, and The Reasoned Schemer (2005), coauthored with William E. Byrd and Oleg Kiselyov.
"Friedman, Wand, and Haynes have done a landmark job.... The sample interpreters in this book are outstanding models. Indeed, since they are runnable models, I'm sure that these interpreters will find themselves at the cores of many programming systems over the years."
—from the foreword by Hal Abelson
"About this title" may belong to another edition of this title.
Shipping:
FREE
Within U.S.A.
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Very Good. Item in very good condition! Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00084840124
Quantity: 1 available
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00062038649
Quantity: 1 available
Seller: ThriftBooks-Atlanta, AUSTELL, GA, U.S.A.
Hardcover. Condition: Good. No Jacket. Former library book; Pages can have notes/highlighting. Spine may show signs of wear. ~ ThriftBooks: Read More, Spend Less 3.1. Seller Inventory # G0262061457I3N10
Quantity: 1 available
Seller: Better World Books: West, Reno, NV, U.S.A.
Condition: Good. Former library book; may include library markings. Used book that is in clean, average condition without any missing pages. Seller Inventory # GRP96546545
Quantity: 1 available
Seller: Better World Books, Mishawaka, IN, U.S.A.
Condition: Good. Former library book; may include library markings. Used book that is in clean, average condition without any missing pages. Seller Inventory # GRP96546545
Quantity: 1 available
Seller: The Book Spot, Sioux Falls, MN, U.S.A.
Hardcover. Condition: New. Seller Inventory # Abebooks2823
Quantity: 1 available