Overview
- Presents a self-contained approach requiring minimal familiarity with only one programming language
- Examines aspects of the design, implementation and practical considerations of programming languages
- Offers fully revised and streamlined discussion, addressing each of the main programming paradigms
Part of the book series: Undergraduate Topics in Computer Science (UTICS)
Access this book
Tax calculation will be finalised at checkout
Other ways to access
About this book
This textbook is a thorough, up-to-date introduction to the principles and techniques that guide the design and implementation of modern programming languages.
The goal of the book is to provide the basis for a critical understanding of most modern programming languages. Thus, rather than focusing on a specific language, the book identifies the most important principles shared by large classes of languages. The notion of ‘abstract machine’ is a unifying concept that helps to maintain an accurate and elementary treatment. The book introduces, analyses in depth, and compares the imperative, object-oriented, functional, logic, concurrent, constraint-based, and service-oriented programming paradigms. All material coming from the first English edition has been updated and extended, clarifying some tricky points, and discussing newer programming languages. This second edition contains new chapters dedicated to constraint, concurrent, and service-oriented programming.
Topics and features:
- Requires familiarity with one programming language is a prerequisite
- Provides a chapter on history offering context for most of the constructs in use today
- Presents an elementary account of semantical approaches and of computability
- Introduces new examples in modern programming languages like Python or Scala
- Offers a chapter that opens a perspective on applications in artificial intelligence
Conceived as a university textbook, this unique volume will also be suitable for IT specialists who want to deepen their knowledge of the mechanisms behind the languages they use. The choice of themes and the presentation style are largely influenced by the experience of teaching the content as part of a bachelor's degree in computer science.
Keywords
Table of contents (16 chapters)
Reviews
“The target audience is students and professionals who already know a language or two and would like to deepen their knowledge of the mechanisms behind this language and/or smoothen their transition to new languages. … The outstanding feature of this text is that it attempts to address a wide audience.” (Wolfgang Schreiner, Computing Reviews, August 28, 2024)
Authors and Affiliations
About the authors
Bibliographic Information
Book Title: Programming Languages: Principles and Paradigms
Authors: Maurizio Gabbrielli, Simone Martini
Series Title: Undergraduate Topics in Computer Science
DOI: https://doi.org/10.1007/978-3-031-34144-1
Publisher: Springer Cham
eBook Packages: Computer Science, Computer Science (R0)
Copyright Information: The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Switzerland AG 2023
Softcover ISBN: 978-3-031-34143-4Published: 15 October 2023
eBook ISBN: 978-3-031-34144-1Published: 14 October 2023
Series ISSN: 1863-7310
Series E-ISSN: 2197-1781
Edition Number: 2
Number of Pages: XXII, 562
Number of Illustrations: 132 b/w illustrations
Topics: Programming Languages, Compilers, Interpreters, Logics and Meanings of Programs