Programming Languages: Build, Prove, and Compare
Autor Norman Ramseyen Limba Engleză Hardback – 26 oct 2022
Preț: 438.39 lei
Preț vechi: 547.98 lei
-20% Nou
Puncte Express: 658
Preț estimativ în valută:
83.92€ • 86.36$ • 70.74£
83.92€ • 86.36$ • 70.74£
Carte tipărită la comandă
Livrare economică 01-15 martie
Preluare comenzi: 021 569.72.76
Specificații
ISBN-13: 9781107180185
ISBN-10: 110718018X
Pagini: 600
Dimensiuni: 184 x 262 x 50 mm
Greutate: 1.59 kg
Editura: Cambridge University Press
Colecția Cambridge University Press
Locul publicării:New York, United States
ISBN-10: 110718018X
Pagini: 600
Dimensiuni: 184 x 262 x 50 mm
Greutate: 1.59 kg
Editura: Cambridge University Press
Colecția Cambridge University Press
Locul publicării:New York, United States
Cuprins
Preface; Acknowledgments; Credits; Tables of judgment forms, important functions, and concrete syntax; List of symbols and notation; Introduction; Part I. Foundations: 1. An imperative core; 2. Scheme, S-expressions, and first class functions; 3. Control operators and a small-step semantics: μScheme+; 4. Automatic memory management; 5. Interlude: μScheme in ML; 6. Type systems for Impcore and μScheme; 7. ML and type inference; Part II. Programming at Scale: 8. User-defined, algebraic types; 9. Molecule, abstract data types, and modules; 10. Smalltalk and object orientation; Afterword; Bibliography; Key words and phrases; Concept index.
Recenzii
'Norman Ramsey provides a foundational approach to understanding the key concepts in programming languages, including methodology around structure and formalism, complemented by abundant (battle-tested) exercises that help to ground the ideas. Whereas many texts on programming languages focus on surface details of a representative class of languages, this book captures key ideas that transcend specific languages, offering formal ways to think about design, reasoning, and implementation.' Greg Morrisett, Cornell University
'Survey courses on programming languages are popular, but the best way to understand programming languages is to implement them, and the best way to start is by implementing interpreters. This book describes how to implement interpreters for a wide range of languages, representing key features of real-world languages while providing the theoretical background needed to understand them. I have used pre-prints of this book for many years in my Caltech course on programming languages, and I know of no book with a comparable depth and breadth of coverage of the subject. I strongly recommend it to anyone with a serious interest in programming languages.' Michael C. Vanier, California Institute of Technology
This book is a landmark work of scholarship. In a single consistent framework Ramsey covers a huge range of topics in programming language design, implementation, and reasoning. We see functional, imperative, and object-oriented languages; we study garbage collection, control operators, type inference, and module systems; we use the key intellectual tools of type theory and semantics to understand and reason about our programs; and, crucially, we build everything. This is not a discursive overview: the book is full of code, extensively indexed and cross-referenced. We emerge with concrete implementations of languages that are carefully designed to demonstrate the key intellectual landmarks of different programming styles. Most important of all, in reading this book you are travelling in the company of a master of his craft, one who has distilled into these pages a lifetime of insightful reflection on the principled design and implementation of programming languages.' Simon Peyton Jones, Epic Games
'Survey courses on programming languages are popular, but the best way to understand programming languages is to implement them, and the best way to start is by implementing interpreters. This book describes how to implement interpreters for a wide range of languages, representing key features of real-world languages while providing the theoretical background needed to understand them. I have used pre-prints of this book for many years in my Caltech course on programming languages, and I know of no book with a comparable depth and breadth of coverage of the subject. I strongly recommend it to anyone with a serious interest in programming languages.' Michael C. Vanier, California Institute of Technology
This book is a landmark work of scholarship. In a single consistent framework Ramsey covers a huge range of topics in programming language design, implementation, and reasoning. We see functional, imperative, and object-oriented languages; we study garbage collection, control operators, type inference, and module systems; we use the key intellectual tools of type theory and semantics to understand and reason about our programs; and, crucially, we build everything. This is not a discursive overview: the book is full of code, extensively indexed and cross-referenced. We emerge with concrete implementations of languages that are carefully designed to demonstrate the key intellectual landmarks of different programming styles. Most important of all, in reading this book you are travelling in the company of a master of his craft, one who has distilled into these pages a lifetime of insightful reflection on the principled design and implementation of programming languages.' Simon Peyton Jones, Epic Games
Notă biografică
Descriere
Teaches students about great programming-language ideas and how to use them in programming practice.