  Language transformations are algorithms that take a language specification in
input, and return the language specification modified. Language transformations
are useful for automatically adding features such as subtyping to programming
languages (PLs), and for automatically deriving abstract machines.
  In this paper, we set forth the thesis that teaching programming languages
features with the help of language transformations, in addition to the planned
material, can be beneficial for students to help them deepen their
understanding of the features being taught.
  We have conducted a study on integrating language transformations into an
undergraduate PL course. We describe our study, the material that we have
taught, and the exam submitted to students, and we present the results from
this study. Although we refrain from drawing general conclusions on the
effectiveness of language transformations, this paper offers encouraging data.
We also offer this paper to inspire similar studies.
