I have been inspired by the following books and tutorials throughout the time I have spent learning programming languages. These books very much shape my perspective on the course, though none entirely overlaps. If I had to pick just one, I would strongly recommend you read EOPL at some point.
- Essentials of Programming Languages, EOPL
- Structure and Interpretation of Computer Programs, SICP
- LISP in Small Pieces
- How to Design Programs, HtDP
- Programming and Programming Languages, PAPL
- Mitchell, Theories of Programming Languages
- Matt Might’s blog