Skip to product information
1 of 1

Maurizio Gabbrielli,Simone Martini

Programming Languages: Principles and Paradigms

Programming Languages: Principles and Paradigms

💎 Earn 208 Points (£2.08) on this item.

Low Stock: Only 2 copies remaining
Regular price £41.64 GBP
Regular price £49.99 GBP Sale price £41.64 GBP
Sale Sold out
Taxes included. Shipping calculated at checkout.

YOU SAVE £8.35

  • Condition: Brand new
  • UK Delivery times: Usually arrives within 2 - 3 working days
  • UK Shipping: Fee starts at £2.39. 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

This item can be found in:

UK and International shipping information

UK Delivery and returns information:

  • Delivery within 2 - 3 days when ordering in the UK.
  • Shipping fee for UK customers from £2.39. Fully tracked shipping service available.
  • Returns policy: Return within 30 days of receipt for full refund.

International deliveries:

Shulph Ink now ships to Australia, Belgium, Canada, France, Germany, Ireland, Italy, India, Luxembourg Saudi Arabia, Singapore, Spain, Netherlands, New Zealand, United Arab Emirates, United States of America.

  • Delivery times: within 5 - 10 days for international orders.
  • Shipping fee: charges vary for overseas orders. Only tracked services are available for most international orders. Some countries have untracked shipping options.
  • Customs charges: If ordering to addresses outside the United Kingdom, you may or may not incur additional customs and duties fees during local delivery.
View full details