Explains the concepts underlying programming languages, and demonstrates how these concepts are synthesized in the major paradigms: imperative, OO, concurrent, functional, logic and with recent scripting languages. It gives greatest prominence to the OO paradigm.Includes numerous examples using C, Java and C++ as exmplar languagesAdditional case-study languages: Python, Haskell, Prolog and AdaExtensive end-of-chapter exercises with sample solutions on the companion Web siteDeepens study by examining the motivation of programming languages not just their features
A decent introduction into how programming languages are set up. Covers a lot of information about the conceptual building blocks of programming languages. The case studies work well to show how those abstract topics translate into actual language features. Would be even better with more modern examples (Rust, Java 11, C++14) since a lot has changed.
Bought this book for my studies at Eindhoven University. In contrast to some the other books I bought for the same reason, this one actually is a good read!