Rating:

Author: Benjamin C. Pierce
ISBN : B00AJXZ5JE
New from $23.03
Format: PDF, EPUB
You can download Free Types and Programming Languages [Print Replica] [Kindle Edition] from 4shared, mediafire, hotfile, and mirror link
Review
"Types are the leaven of computer programming; they make it digestible. This excellent book uses types to navigate the rich variety of programming languages, bringing a new kind of unity to their usage, theory, and implementation. Its author writes with the authority of experience in all three of these aspects." Robin Milner, Computer Laboratory, University of Cambridge
"Written by an outstanding researcher, this book is well organized and very clear, spanning both theory and implementation techniques, and reflecting considerable experience in teaching and expertise in the subject."--John Reynolds, School of Computer Science, Carnegie Mellon University
"Types are the leaven of computer programming; they make it digestible. This excellent book uses types to navigate the rich variety of programming languages, bringing a new kind of unity to their usage, theory, and implementation. Its author writes with the authority of experience in all three of these aspects."--Robin Milner, Computer Laboratory, University of Cambridge
"Types and Programming Languages is carefully written with a well-balanced choice of topics. It focusses on pragmatics, with the right level of necessary theory. The exercises in this book range from easy to challenging and provide stimulating material for beginning and advanced readers, both programmers and the more theoretically minded."--Henk Barendregt, Faculty of Science, Mathematics, and Computer Science, University of Nijmegen, The Netherlands
"Over the last two decades type theory has emerged as the central, unifying framework for research in programming languages. But these remarkable advances are not as well-known as they should be. The rapid advance of research on type systems for programming languages has far outpaced its dissemination to the rest of the field. No more. Pierce's book not only provides a comprehensive account of types for programming languages, but it does so in an engagingly elegant and concrete style that places equal emphasis on theoretical foundations and the practical problems of programming. This book will be the definitive reference for many years to come."--Robert Harper, Professor, Computer Science Department, Carnegie Mellon UniversityPlease note: Endorser gives permission to use the final two sentences of the quote as his endorsement, if necessary.
About the Author
Benjamin C. Pierce is Professor of Computer and Information Science at the University of Pennsylvania.
Direct download links available for Free Types and Programming Languages [Print Replica] [Kindle Edition]
- File Size: 6690 KB
- Print Length: 648 pages
- Publisher: MIT Press; 1 edition (February 1, 2002)
- Sold by: Amazon Digital Services, Inc.
- Language: English
- ASIN: B00AJXZ5JE
- Text-to-Speech: Not enabled
X-Ray:
- Lending: Enabled
- Amazon Best Sellers Rank: #224,297 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
Free Types and Programming Languages
This text is perhaps the most accessible yet thorough introduction to type systems I've encountered.
On the one hand, it offers excellent grounding: practical motivation is provided, numerous examples illustrate the concepts, and implementations are provided which can be used to typecheck and evaluate these examples. At various points, extended demonstrations of the type systems under consideration are given (e.g. showing how objects may be encoded). The exercises are well constructed and in many cases, accompanied with answers and detailed explanations in the appendix.
On the other hand, it offers an excellent exposition of the material: Pierce provides a lucid account of the static and dynamic semantics (primarily small-step operational) for various lambda calculi. He proceeds in a stepwise fashion via the gradual accretion of features: from first order (simply typed) systems to higher order systems incorporating bounded subtyping and recursion. He also gives attention to the metatheory of these systems (focusing on proofs of progress and preservation, and for systems with subtyping, of decideability). Internally, the text is well organized, with clear dependencies among the chapters, and the bibliography is extensive.
It should be noted that, while reasonably comprehensive, the text is necessarily limited in scope. For example, aside from the discussion on Featherweight Java, systems other than typed lambda calculus variants are not considered. In my opinion, the focus on these (in some sense "low-level") calculi makes foundational issues more apparent, and the linear progression from simple to complex variants lends a pleasant cohesiveness that would have been lost in a more general survey. However, as object/class encodings were discussed at various points, it would have been nice to see a more integrated presentation, in the spirit of the paper Comparing Object Encodings [BCP97].
By Jason M Kinzer
This is a textbook about programming language theory, somewhat mathematical-- but it's must-read material for anyone who wants to gripe about programming languages cluefully, much less design them.
For me, this book strikes exactly the right balance between theory and practicality. Chapters on the mathematical properties of various tiny programming languages are interleaved with chapters that provide annotated implementations of those languages.
The book will also give you the background (notation and terminology) you'll need to read cutting-edge research papers on programming language theory.
This book contains all the information I was missing. Excellent presentation of the material, well written, great exercises, doesn't go off into lala-land. Highly recommended. Some math background very helpful (you need to know what a mathematical proof is).
By Jason Orendorff
Download Link 1