Skip to product information
1 of 1

Maurizio Gabbrielli,Simone Martini

Programming Languages: Principles and Paradigms

Programming Languages: Principles and Paradigms

đź’Ž Earn 206 Points (ÂŁ2.06) on this item.

Low Stock: Only 3 copies remaining
Regular price ÂŁ41.29 GBP
Regular price ÂŁ49.99 GBP Sale price ÂŁ41.29 GBP
Sale Sold out
Taxes included. Shipping calculated at checkout.

YOU SAVE ÂŁ8.70

  • Condition: Brand new
  • UK Delivery times: Usually arrives within 2 - 3 working days
  • UK Shipping: Fee starts at ÂŁ3.89. Subject to product weight & dimension

Bulk ordering. Want 15 or more copies? Get a personalised quote and bigger discounts. Learn more about bulk orders.

  • More about Programming Languages: Principles and Paradigms


This textbook provides a comprehensive and up-to-date introduction to the principles and techniques that guide the design and implementation of modern programming languages. It focuses on identifying the most important principles shared by large classes of languages and introduces various programming paradigms, including imperative, object-oriented, functional, logic, concurrent, constraint-based, and service-oriented programming. The second edition includes new chapters on constraint, concurrent, and service-oriented programming and is suitable for university students and IT specialists who want to deepen their knowledge of programming languages.

Format: Paperback / softback
Length: 562 pages
Publication date: 15 October 2023
Publisher: Springer International Publishing AG


This comprehensive and up-to-date textbook serves as an essential introduction to the principles and techniques that govern the design and implementation of modern programming languages. Its primary objective is to establish a solid foundation for a critical comprehension of the majority of contemporary programming languages, rather than concentrating solely on a particular language. To achieve this, the book identifies the fundamental principles that are shared by a wide range of languages, thereby promoting a unified and elementary treatment.

A central concept that aids in maintaining accuracy and clarity throughout the text is the notion of an "abstract machine." This concept serves as a unifying thread that connects various programming paradigms, including imperative, object-oriented, functional, logic, concurrent, constraint-based, and service-oriented programming. The book provides in-depth analyses and comparisons of these paradigms, enabling readers to gain a deep understanding of their strengths, weaknesses, and applications.

In addition to updating and expanding the material from the first English edition, this second edition introduces several new chapters dedicated to constraint, concurrent, and service-oriented programming. These chapters reflect the latest developments and advancements in the field, providing readers with a comprehensive understanding of these programming paradigms.

Topics covered in the textbook include:

Familiarity with one programming language is a prerequisite for understanding the concepts presented in the book.

A chapter on history offers valuable context for most of the constructs in use today, helping readers to appreciate the evolution and development of programming languages.

An elementary account of semantical approaches and computability is provided, providing readers with a foundational understanding of the theoretical foundations of programming.

New examples are introduced in modern programming languages such as Python or Scala, showcasing the practical applications of the principles discussed.

A chapter opens a perspective on applications in artificial intelligence, highlighting the role of programming languages in advancing this field.

Conceived as a university textbook, this unique volume is also suitable for IT specialists who wish 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.

By providing a comprehensive and accessible introduction to programming languages, this textbook aims to empower readers with the skills and knowledge necessary to excel in the modern software development landscape. Whether you are a student, professional, or enthusiast, this book will serve as a valuable resource for your programming journey.

Weight: 872g
Dimension: 158 x 237 x 40 (mm)
ISBN-13: 9783031341434
Edition number: 2nd ed. 2023

UK and International shipping information

We deliver throughout the United Kingdom and to 128 countries and territories worldwide, including the United States, Australia, Canada, Germany, Spain and France.

View full UK and international delivery information.

View full details