Focus: the principles governing the design and implementation of programming languages.
Why are the principles of programming languages important?
Thesis I: You must learn the programming languages that control the technologies of interest (or economic importance) to you.
In the past few years, a number of new languages have become prominent (in some cases dominant) in specific computational applications including:
Each of these new language is targeted at a particular technological niche.
Thesis II: New Programming languages are constantly being invented.
The proliferation of languages has made it especially important to understand the design and properties of languages. In particular, many technologies already have languages designed to address them; the user only needs to find the appropriate language.
Thesis III: Understanding programming languages is the key to better program design.