Deciding where to go from here
You may want to study more advanced work in any number of areas. These include programming language design, bytecode implementation, code optimization, monitoring and debugging program executions, programming environments such as IDEs, and GUI builders. In this section, we will explore just a few of these possibilities in more detail. This section reflects many of my personal biases and priorities.
Studying programming language design
It is probably more difficult to identify strong works in programming language design than most of the other technical topics mentioned in this section. Harold Abelson and Gerald Sussman wrote a book called Structure and Interpretation of Computer Programs, which is widely reputed to be useful. It is not a programming language design book, but its insights occasionally delve into that subject.
Browsing casually, you may find many general programming language books. Rafael Finkel’s Advanced Programming...