Jump to ratings and reviews
Rate this book

Design Concepts in Programming Languages

Rate this book
Hundreds of programming languages are in use today--scripting languages for Internet commerce, user interface programming tools, spreadsheet macros, page format specification languages, and many others. Designing a programming language is a metaprogramming activity that bears certain similarities to programming in a regular language, with clarity and simplicity even more important than in ordinary programming. This comprehensive text uses a simple and concise framework to teach key ideas in programming language design and implementation. The book's unique approach is based on a family of syntactically simple pedagogical languages that allow students to explore programming language concepts systematically. It takes as premise and starting point the idea that when language behaviors become incredibly complex, the description of the behaviors must be incredibly simple. The book presents a set of tools (a mathematical metalanguage, abstract syntax, operational and denotational semantics) and uses it to explore a comprehensive set of programming language design dimensions, including dynamic semantics (naming, state, control, data), static semantics (types, type reconstruction, polymporphism, effects), and pragmatics (compilation, garbage collection). The many examples and exercises offer students opportunities to apply the foundational ideas explained in the text. Specialized topics and code that implements many of the algorithms and compilation methods in the book can be found on the book's Web site, along with such additional material as a section on concurrency and proofs of the theorems in the text. The book is suitable as a text for an introductory graduate or advanced undergraduate programming languages course; it can also serve as a reference for researchers and practitioners.

1322 pages, Hardcover

First published July 18, 2008

5 people are currently reading
164 people want to read

About the author

Franklyn A. Turbak

1 book1 follower

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
9 (39%)
4 stars
10 (43%)
3 stars
2 (8%)
2 stars
2 (8%)
1 star
0 (0%)
Displaying 1 - 3 of 3 reviews
Profile Image for Tony.
3 reviews1 follower
Currently reading
October 12, 2009
S-Expressions do in fact get easier to parse the more you look at them.

The lambda calculus is just about the most awesome idea I've ever heard.

Continuations are the "GOTO" of functional programming languages.
Displaying 1 - 3 of 3 reviews

Can't find what you're looking for?

Get help and learn more about the design.