  In the pedagogy of programming languages, one well-known course structure is
to tour multiple languages as a means of touring paradigms. This
tour-of-paradigms approach has long received criticism as lacking depth,
distracting students from foundational issues in language theory and
implementation. This paper argues for disentangling the idea of a
tour-of-languages from the tour-of-paradigms. We make this argument by
presenting, in depth, a series of case studies included in the Human-Centered
Programming Languages curriculum. In this curriculum, case studies become deep,
serving to tour the different intellectual foundations through which a scholar
can approach programming languages, which one could call the tour-of-humans. In
particular, the design aspect of programming languages has much to learn from
the social sciences and humanities, yet these intellectual foundations would
yield far fewer deep contributions if we did not permit them to employ case
studies.
