Programming Language Concepts by Carlo Ghezzi and Mehdi Jazayeri
Programming Language Concepts provides a general overview at the major paridigms of programming languages. Though this book was published ten years ago, the topics covered still apply today, though the authors do use some languages that have wanned in popularity.
The first topics the book covers are syntax, semantics, and languages structure their data, procedures and packages. I especially enjoyed chapter two, which uses a fictional language to illustrate the effects language features have on the program’s resulting machine code. The chapter explores the trade-offs among low level and higher level languages.
The remaining chapters dealt with different programming paradigms: object oriented, functional and logic. These chapters I did not enjoy as much because I did not learn anything new in particular. I felt the material was too general to be of any practical use.
For those interested in purchasing this book, instead of buying new for over $100, try buying used instead. At the time of writing, the cheapest is $0.01 on Amazon (excluding shipping).