The course is a PhD-level introduction to the research area of
programming languages. It covers basic theoretical and practical
techniques for modeling and analyzing programming languages.
At the meta level, the course exposes student to the basic ideas of
research in computer science: how to ask questions, elements of
Not: The course does not teach people how to pick or
construct the best programming language for a project. Answer this
(common) question would be as much a study in sociology and psychology
(and the conservative nature of post-graduate programmers) as a study in
technical factors. (The technically best programming language for a task
is almost never chosen "because we have never worked with that
Preparation for First Meeting: Take an 8x11, fold it in
half along the long axis, and fill one half of one page with the name of
your favorite programming language. -- In the future such announcements
will show up on the course notifications, called "blog".