Название: Programming Language Explorations, 2nd Edition
Автор: Ray Toal, Sage Strieker, Marco Berardini
Издательство: CRC Press
Год: 2024
Страниц: 408
Язык: английский
Формат: pdf (true)
Размер: 13.4 MB
Programming Language Explorations helps its readers gain proficiency in programming language practice and theory by presenting both example-focused, chapter-length explorations of fourteen important programming languages and detailed discussions of the major concepts transcending multiple languages. A language-by-language approach is sandwiched between an introductory chapter that motivates and lays out the major concepts of the field and a final chapter that brings together all that was learned in the middle chapters into a coherent and organized view of the field. Each of the featured languages in the middle chapters is introduced with a common trio of example programs and followed by a tour of its basic language features and coverage of interesting aspects from its type system, functional forms, scoping rules, concurrency patterns, and metaprogramming facilities. These chapters are followed by a brief tour of over 40 additional languages designed to enhance the reader’s appreciation of the breadth of the programming language landscape and to motivate further study. We’ve carefully chosen the order of languages to make a story out of the book. We start with Lua for its elegant design and relatively small but powerful feature set. jаvascript follows with similar features to Lua (such as first class functions and prototypal inheritance), while adding a host of modern features and a powerful event-driven, asynchronous programming model. As perhaps the world’s most popular language, jаvascript has influenced hundreds of successors, the most popular of which, TypeScript, comes next, along with an introduction to static types. The next two languages, Python and Ruby, are general-purpose scripting languages, in which we focus on first-class types and object-oriented programming, respectively. We then encounter Java, an extraordinarily popular language in the enterprise computing space.