Название: Programming Languages: Build, Prove, and Compare
Автор: Norman Ramsey
Издательство: Cambridge University Press
Год: 2023
Страниц: 800
Язык: английский
Формат: pdf (true)
Размер: 10.1 MB
Computer scientists often need to learn new programming languages quickly. The best way to prepare for this is to understand the foundational principles that underlie even the most complicated industrial languages. This text for an undergraduate programming languages course distills great languages and their design principles down to easy-to-learn 'bridge' languages implemented by interpreters whose key parts are explained in the text. The book goes deep into the roots of both functional and object-oriented programming, and it shows how types and modules, including generics/polymorphism, contribute to effective programming. The book is not just about programming languages; it is also about programming. The ideas, descriptive techniques, and examples are conveyed by means of bridge languages. A bridge language models a real programming language, but it is small enough to describe formally and to learn in a week or two, yet big enough to write interesting programs in. The bridge languages in this book model Algol, Scheme, ML, CLU, and Smalltalk, and they are related to many modern descendants, including C, C++, OCaml, Haskell, Java, jаvascript, Python, Ruby, and Rust.